使用EF实体模型在Catel上自动创建ViewModel的SerializationException

时间:2014-09-19 06:53:40

标签: entity-framework catel

当Catel尝试自动创建属于视图的ViewModel类的实例时,我得到一个SerializationException,抱怨不期望System.Data.Entity.DynamicProxies。 Model是一个EF 6.1实体(继承自ModelBase),我使用的是Catel 3.9。 我该如何防止这种情况?

1 个答案:

答案 0 :(得分:0)

注意:这一切都适用于Catel 4.0(最新的预发布版本,因为它是稳定的并且有很多改进)。

Catel为了IEditableObject实现的目的而序列化模型。使用Model属性时,它会尝试序列化成员。您有两个选择:

  1. 使用[Model(SupportedIEditableObject = false)](但你会的 失去"自动取消"功能
  2. 使用[ExcludeFromSerialization]或。装饰失败的成员 使用自定义序列化修饰符