0
Я пытаюсь сохранить данные сущности, используя Общие методы подсветки, который является обновлением. Ниже приведен следующий код. Я не могу понять, чего не хватает. Ошибка в коде или в пользовательском интерфейсе отсутствует. Просто, что ничего не спасется.Метод Lightswitch Updating() не сохраняет данные в DB
partial void viewFamilyProcessDatas_Updating(viewFamilyProcessData entity)
{
var AutoAddMissingListing = entity.AutoAddMissingListing;
var AutoAddOddLots = entity.AutoAddOddLots;
var DefaultFilterValue = entity.DefaultFilterValue;
var ExcludeZeroNumberOfUnits = entity.ExcludeZeroNumberOfUnits;
//objFamilyProcessData.FamilyID = entity.FamilyID;
var IgnoreForPricing = entity.IgnoreForPricing;
var LimitEndDate = entity.LimitEndDate;
var OffsetFromMaxAsAtDate = entity.OffsetFromMaxAsAtDate;
var PrefilterConstituents = entity.PrefilterConstituents;
var TimeDataExpires = entity.TimeDataExpires;
entity.AutoAddMissingListing = AutoAddMissingListing;
entity.AutoAddOddLots = AutoAddOddLots;
entity.DefaultFilterValue = DefaultFilterValue;
entity.ExcludeZeroNumberOfUnits = ExcludeZeroNumberOfUnits;
entity.IgnoreForPricing = IgnoreForPricing;
entity.LimitEndDate = LimitEndDate;
entity.OffsetFromMaxAsAtDate = OffsetFromMaxAsAtDate;
entity.PrefilterConstituents = PrefilterConstituents;
entity.TimeDataExpires = TimeDataExpires;
//this.DataWorkspace.SolaDBServerData.Details.DiscardChanges();
entity.Details.DiscardChanges();
}
Вы на самом деле не делает ничего, плюс вы звоните DiscardChanges(). Скорее всего, ваш фактический источник данных не является обновляемым. Первое, что вам нужно сделать, это убедиться, что каждая таблица в вашей базе данных имеет PrimaryKey. Затем убедитесь, что все ForeignKeys определены обратно в PrimaryKey. Затем обновите источник данных Lightwitch DataSource. Затем удалите описанный выше метод обновления, поскольку он фактически ничего не делает. – Kris
Привет @Kris My DataSource является обновляемым. Я проверил, что каждая таблица в моей БД имеет ПК. Также все FK определены в PK. Я обновил LS Datasource. Но я не могу удалить метод обновления. Потому что я пытаюсь сохранить данные непосредственно в представлении. Свойство TimeDataExpires в моем представлении требует сохранения данных таким образом. Не могли бы вы предложить мне, как я могу добавить код C#, чтобы иметь возможность обновлять данные об объекте. –
HI @Kris. Если я удалю строку DiscardChanges(), это даст мне ошибку, в которой говорится, что «Обновить или вставить вид или function 'dbo.viewFamilyProcessData' не удалось, поскольку содержит производное или постоянное поле. " –