我即将自下而上构建一个相当复杂的 Web 应用程序,并且我想以正确的方式使用适当的设计模式(我过去并不总是使用)和最新的 .Net 技术。
我的目标是从 Web 应用程序开始,但让未来的移动应用程序、第三方应用程序开发和插件成为可能。
这使我遇到了主要难题:对于网站(我将使用 MVC 模式构建),我应该使用 WCF 将我的数据模型公开为 API,还是应该简单地通过 dll 引用我的数据(或Web 应用程序解决方案中的一个单独项目)?
让我支持它并给你一些我的其他设计想法,这样你就知道我想要做什么,如果其中任何一个看起来是错误的方法,请提供输入和建议:
- 我想使用 EF 和代码优先方法构建我的数据模型,使用工作单元和存储库等设计模式。
- 我想通过使用 WCF 的 API 公开我的数据模型 (1)。
- 我想使用 TDD 和 MVC 构建一个 Web 应用程序,从我的数据模型 (1) 中获取我的数据。
因此,鉴于上述情况,当我可以轻松访问数据模型时,让 Web 应用程序使用 WCF API 似乎是一个额外的麻烦,只需在我的 Web 应用程序中引用它即可。此外,后者似乎更容易,因为我可以立即访问我的数据模型中的所有对象。我看不出使用 Web 服务怎么可能?我想使用 WCF API 的原因是我听到了很多赞誉,因为我只通过 API 公开数据,没有例外,以便真正能够为多个平台进行开发。还有哪些其他原因?我可以为 WCF 使用除 Http 消息之外的任何内容吗?我可以公开对象吗?如果可以,如何公开?
我觉得我正在寻找的很多答案都可以在网上找到,但我花了很多时间查看拼图的各个部分,但仍然很难将它们全部连接在一起。我希望你们能提供帮助,这也是一个可以造福他人的问题。
正如我所说,我想以正确的方式做到这一点,因此非常感谢您的意见(在设计阶段的任何阶段)。谢谢!