我的edmx模型中有一个实体,它有一个可以包含大量XML数据的属性。
基本上我想在没有此属性(列)/ *巨大数据加载* /的情况下加载此实体。并且仅在严格需要时才加载此列。
我尝试创建一个包含此属性的继承实体,并从基本实体(原始实体)中删除此属性。我做了映射。 这时我有问题,在编译期间我得到错误,该基本实体无法插入和更新自身,因为属性不可为空
我正在寻找最佳方法(解决方案)如何解决这种情况。
我正在附加我的emdx设计师的剪辑(包含我当前和期望的情况)
更新
我会尝试编写一个我尝试过的程序: 我将函数映射到我的自定义函数。对于没有XML列(属性)的实体TRP_TechReport_T。然后我只是将实体TRP_TechReport_T函数映射到我的自定义函数(包含XML列)。
然后我在实体TRP_TechReport_T上设置Mapping条件:当TRP_XML = Empty.String
TechReport_T映射:
TechReport_T功能:
TechReportFull_T映射:
TechReportFull_T功能:
此刻我收到错误:
错误2错误3032:从第3754行开始映射片段时出现问题:映射了条件成员'TRP_TechReport_T.TRP_XML',条件不是'IsNull = False'。删除TRP_TechReport_T.TRP_XML上的条件或从映射中删除它。
该列在数据库中不可为空,不得为。
我可以将XML属性硬设置为可空,但是在从数据库更新模型的情况下,信息将丢失。
目前这是我唯一能想到的。