1

我有一个商业类型的模型 obj,它有几个道具,这个 obj 主要用于我的数据访问,使用 EF 以及用于我的验证和东西的所有注释。

现在我的问题是,是否有关于如何正确使用相同模型对象作为我的 wcf 相关操作的数据合同对象的指南。即,如果我使用相同的模型对象,它将看起来像这样。

[DataContract]
public class Business
{
    public int Id { get; set; }
    [Required]
    [DataMember]
    public string Name { get; set; }
}

有人对此有任何想法,最好的方法是什么,甚至不这样做?

4

2 回答 2

1

我会说这不是最好的主意。

WCF DataContracts 不允许使用部分类,因此如果每次刷新架构时都添加 DataContract 所需的注释,注释将会消失。

Web 服务的最佳实践是使 DataContract 尽可能的精简。最好只发送绝对必要的数据。我建议制作新对象并将 EF 对象映射到新创建的苗条对象。

于 2012-05-15T01:23:47.527 回答
0

如果您使用 Entity Framework 4.1 Code First 或POCO ,则可以这样做。在这种情况下,实体不会自动生成,您将不会面临刷新实体的问题。

于 2012-05-15T04:21:42.480 回答