Lightswitch Updating() 方法不在数据库中保存任何数据

Lightswitch Updating() method not saving any data in DB

我正在尝试使用 Lightswitch 的一般方法(正在更新)保存实体数据。下面是下面的代码。我不知道我错过了什么。代码或 UI 中没有错误。只是什么都没有保存。

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();



    }

最终解决方案是这样的:

partial void vwFamilyProcessDatas_Updating(vwFamilyProcessData entity)
    {
        if(entity.Details.EntityState.ToString() == "Modified")
        {
            var AutoAddMissingListing = entity.AutoAddMissingListing;
            var AutoAddOddLots = entity.AutoAddOddLots;
            var DefaultFilterValue = entity.DefaultFilterValue;
            var ExcludeZeroNumberOfUnits = entity.ExcludeZeroNumberOfUnits;
            var IgnoreForPricing = entity.IgnoreForPricing;
            var LimitEndDate = entity.LimitEndDate;
            var OffsetFromMaxAsAtDate = entity.OffsetFromMaxAsAtDate;
            var PrefilterConstituents = entity.PrefilterConstituents;
            var TimeDataExpires = entity.TimeDataExpires;

            tblFamily objFamily = tblFamilies.Where(f => f.FamilyID == entity.FamilyID).Single();
            objFamily.AutoAddMissingListing = AutoAddMissingListing;
            objFamily.AutoAddOddLots = AutoAddOddLots;
            objFamily.DefaultFilterValue = DefaultFilterValue;
            objFamily.ExcludeZeroNumberOfUnits = ExcludeZeroNumberOfUnits;
            objFamily.IgnoreForPricing = IgnoreForPricing;
            objFamily.LimitEndDate = LimitEndDate;
            objFamily.OffsetFromMaxAsAtDate = OffsetFromMaxAsAtDate;
            objFamily.PrefilterConstituents = PrefilterConstituents;
            objFamily.TimeDataExpires = TimeSpan.Parse(TimeDataExpires);

            entity.Details.DiscardChanges();
        }}