【发布时间】:2017-02-10 05:36:55
【问题描述】:
我有一个使用 web api 服务的 mvc web 应用程序。如果我想将 MyModel 中表示的复杂表单数据从 mvc 发送到 web 服务,webservice 是否应该将 MyModel 作为项目的一部分。
这样我就可以在 mvc 和 web 服务这两个项目上使用 MyModel。这是正确的方法吗?
【问题讨论】:
标签: c# asp.net-mvc asp.net-web-api
我有一个使用 web api 服务的 mvc web 应用程序。如果我想将 MyModel 中表示的复杂表单数据从 mvc 发送到 web 服务,webservice 是否应该将 MyModel 作为项目的一部分。
这样我就可以在 mvc 和 web 服务这两个项目上使用 MyModel。这是正确的方法吗?
【问题讨论】:
标签: c# asp.net-mvc asp.net-web-api
在我看来,它们应该有不同的模型并进行必要的映射以避免相互依赖。在这种情况下,两个项目都完好无损。这种方法称为Data transfer object (DTO)。
好处
缺点
如果您在不同的团队中从事不同的零件工作,您会特别喜欢 DTO。一个团队处理视图,另一个团队负责后端。此外,如果您使用外部 API。但是您可以在您的情况下应用这种方法。
【讨论】: