我正在使用linqtosql和sqlserver2008的动态数据。
但是当我更新表时,这个属性又被设置回false。所以我把它添加到元数据中。由于某些原因,它没有被提取,“00000000-0000-0000-0000-000000000000”被插入到数据库中。正在获取displayname和readonly更改。
我错过了什么?
[元数据类型(typeof(CMS\u Data\u HistoryMetadata))] 公共部分类CMS\u数据\u历史记录 { } [TableName("Content")] public class CMS_Data_HistoryMetadata { [DisplayName("Pagina Title")] public object pageTitleBar { get; set; } [ReadOnly(true)] [DisplayName("Versie")] public object version_date { get; set; } [ColumnAttribute(IsDbGenerated = true)] public object entity_id; }
[元数据类型(typeof(CMS\u Data\u HistoryMetadata))] 公共部分类CMS\u数据\u历史记录 {
} [TableName("Content")] public class CMS_Data_HistoryMetadata { [DisplayName("Pagina Title")] public object pageTitleBar { get; set; } [ReadOnly(true)] [DisplayName("Versie")] public object version_date { get; set; } [ColumnAttribute(IsDbGenerated = true)] public object entity_id; }
我通过扩展部分insert en update类解决了这个问题,并在那里检查guid是否已填充
局部空隙 插入CMS\数据\历史(CMS\数据\历史 { if(instance.entity_id == Guid.Empty) { instance.entity_id = Guid.NewGuid(); } this.ExecuteDynamicInsert(instance); } partial void UpdateCMS_Data_History(CMS_Data_History 实例) { instance.version\u date=DateTime.Now; } }
局部空隙 插入CMS\数据\历史(CMS\数据\历史 {
if(instance.entity_id == Guid.Empty) { instance.entity_id = Guid.NewGuid(); } this.ExecuteDynamicInsert(instance); } partial void UpdateCMS_Data_History(CMS_Data_History
实例) { instance.version\u date=DateTime.Now; } }