Я использую TableAdapter для обновления базы данных следующим образом:
var changes = anpDatabase.AnpCollection.GetChanges();
anpCollectionTableAdapter.Update((AnpDatabase.AnpCollectionDataTable)changes);
anpDatabase.AnpCollection.Merge(changes);
anpDatabase.AnpCollection.AcceptChanges();
Однако этого недостаточно, чтобы обновить основной столбец идентификатора... Я попытался изменить команду Insert адаптера на следующее:
INSERT INTO AnpCollection
(ParentCollectionId, StartDate, EndDate, Completed, IsPartial, Partitioned, IsAutomaticallyGenerated)
VALUES (@ParentCollectionId,@StartDate,@EndDate,@Completed,@IsPartial,@Partitioned,@IsAutomaticallyGenerated);
SELECT CollectionId, ParentCollectionId, StartDate, EndDate, Completed, IsPartial, Partitioned, IsAutomaticallyGenerated FROM AnpCollection WHERE (CollectionId = SCOPE_IDENTITY())
Однако, если я это сделаю, вместо обновления столбца появится новая строка с правильным значением идентификатора... Это не то, что я хочу... Может ли кто-нибудь мне помочь? Заранее спасибо!