【问题标题】:EF4: Serialize only eager loaded navigation properties of Poco ObjectsEF4:仅序列化 Poco 对象的预先加载的导航属性
【发布时间】:2011-08-27 17:08:55
【问题描述】:

我正在使用返回 POCO 对象的 WCF 服务。我的导航属性被标记为虚拟以启用延迟加载/代理。我还使用 [ApplyDataContractResolver] 模式将代理序列化为父 POCO 对象。一切正常,直到我将导航属性添加到关系的双方,这会导致循环引用 - 导致它无法正确序列化。有没有办法告诉序列化程序只序列化急切加载的(使用.include())导航属性并忽略尚未加载的导航属性而不是填充它们?

【问题讨论】:

    标签: c# entity-framework-4 poco


    【解决方案1】:

    除非您manually define that,否则无法仅序列化预先加载的属性。此外,它对您没有帮助,因为您仍然可以使用循环引用预先加载实体。如果你想通过 WCF 发送 POCO,你应该关闭延迟加载,因为你永远不会避免延迟加载不必要的属性,除非你永久地将它们从属性序列化中排除,但在这种情况下,它们也不会在预先加载后被序列化。

    【讨论】:

      猜你喜欢
      • 2011-01-03
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多