1

我一直在努力掌握 ASP 的使用。NET WebApi 最近,我看了一堆教程并阅读了很多资料,但没有找到我需要的信息。这可能是一个非常基本的问题,但我的想法是使用 IIS 托管我的 webapi,并针对 3 层架构,例如表示层、业务日志和数据访问。

现在我为我的表示层创建了一个 MVC 4 项目。但我不太了解的是,我是否会为我的业务逻辑创建另一个带有 web api 模板的 MVC 4 项目,并去掉所有控制器、视图等?

希望我说得通。谢谢阅读。

4

3 回答 3

4

是否应将 WebAPI 托管在与 MVC 项目不同的 ASP.NET 应用程序中是值得商榷的。两种方法都是正确的。例如,如果您不想将 WebAPI 公开给公众,您可以将它托管在一些只能由您的 MVC 应用程序访问的内部网络中。如果您想向公众公开它,那么您可以将它与您的 MVC 应用程序一起托管。因此,这实际上取决于您是否要向公众公开 HTTP API。

于 2012-08-29T14:46:55.757 回答
2

3 层架构并不意味着(在一般情况下)SOA(面向服务的架构)。如果您真的需要 SOA - 最好为 API 项目(服务)和 Web UI(演示)设置单独的项目。但是,如果您只需要 SOA 而不需要 REST 服务(用于公共访问),那么使用 WCF 而不是 WebAPI 可能会更好。

于 2012-08-29T14:47:38.707 回答
0

Marcel,您的 MVC 是用于定义表示层的模式,您也可以使用 WebForms,但您选择了 MVC,

您还必须创建业务层和数据访问层。这些层独立于 MVC。

选择 MVC 只是允许您方便单元测试(控制器),方便将来更改视图技术,将业务逻辑与表示分离......

于 2012-08-29T14:46:57.807 回答