【发布时间】:2011-09-16 16:16:20
【问题描述】:
我的 ASP.NET MVC 站点连接到 WCF 服务以获取数据。 WCF 服务返回如下数据协定:
[DataContract]
public class Person
{
[DataMember]
public string First { get; set; }
[DataMember]
public string Last { get; set; }
}
我的 MVC 项目中的视图模型如下所示:
public class MyViewModel
{
public string SomeExtraField1 { get; set; }
public string SomeExtraField2 { get; set; }
public string SomeExtraField3 { get; set; }
public Person Person { set; set; }
}
我的视图模型是否应该引用从数据服务返回的“Person”数据协定?或者我应该在我的 MVC 项目中创建一个新的“Person”类来反映“Person”数据协定上的属性?
WCF 服务调用隐藏在接口后面。似乎让接口引用数据合同使我的接口成为一个泄漏的抽象。但是,我有一些人认为在我的 MVC 项目中创建一个额外的“Person”类来反映数据契约是代码膨胀。
围绕这种分层/解耦的最佳做法是什么?
【问题讨论】:
标签: asp.net-mvc viewmodel