从Web服务强烈地键入类的视图?

时间:2010-12-14 22:59:33

标签: asp.net-mvc model-view-controller

目前我使用webservice来调用数据库并将一个对象传回我的MVC应用程序。目的是在表格上显示数据。

如果我只是从Web服务中键入View到类,或者它应该总是输入到MVC应用程序内的模型中,那会更好吗?如果我在我的应用程序中键入模型,那么我将不得不创建一个新的类实例并复制所有信息,这似乎是浪费时间。

哪一个被认为是最佳做法?从Web服务或MVC应用程序中的类强烈输入类?

干杯。

3 个答案:

答案 0 :(得分:1)

最佳做法是通过了解应用程序的内部结构来保护您的应用程序免受外部更改和您的意见。所以我只想创建一个单独的类,然后将其映射到Web服务类。您也可以使用AutoMapper之类的东西为您进行映射。

答案 1 :(得分:1)

您不应该从WebService依赖该类。 MVC的ViewModel被认为是简单的数据表示。您可以使用AutoMapper轻松地将WebService类映射到ViewModel类。这被视为最佳做法,并在this book中进行了描述。

答案 2 :(得分:1)

是。最佳实践是使用不与域模型耦合的视图模型 - 一个简单的DtO。但是,需要复制应用于您的域的任何验证。因此,有时候权衡是将域实体传递给视图 - 我很乐意这样做。

在你的情况下 - 和DTO一样,在这里建议其他人。