【发布时间】:2010-08-23 16:28:07
【问题描述】:
我猜当我生成实体时,它们没有 [DataContract] 属性,所以我无法将对象传递给客户端。
【问题讨论】:
标签: c# .net wcf entity-framework
我猜当我生成实体时,它们没有 [DataContract] 属性,所以我无法将对象传递给客户端。
【问题讨论】:
标签: c# .net wcf entity-framework
您应该使用WCF Data Service、OData 或RIA services,具体取决于您在做什么。正如你没有提到的,这就是我能提供的所有帮助。
【讨论】:
自 .NET 3.5 起不再需要 DataContract 属性。当您不使用 DataContract、Serializable 等标记类时,将使用默认序列化。这意味着所有带有 getter 和 setter 的公共属性都将被序列化。但在 EF 的情况下,它应该生成具有 DataContract 和 DataMember 属性的类。在这种情况下,它是必需的,因为 EF 生成带有循环引用的对象图,因此必须用 [DataContract(IsReference=true)] 标记 EF 类。
【讨论】: