我已经完成了很多的搜索,我知道这是本网站上的一个常见讨论点,但我发现的所有内容都没有回答我(看似简单)的问题。
我的情况是我有一个在IIS中运行的MVC Web应用程序,我最近开始构建一个WebAPI来为底层数据模型提供CRUD接口。
这些是Visual Studio中的单独项目,可以单独运行。
我的问题是如何将它们部署到IIS以及如何配置它
http;//myhost/Customers/Report
调用MVC的东西,但是
http//myhost/api/Customers/123
调用WebAPI。
我已经看到了部署WebAPI的各种示例,但它们在URL中悄悄地包含了不同的端口号。我想避免这样的事情......
http//myhost:8080/api/Customers/123
在IIS配置(MVC树中的嵌套应用程序或虚拟目录)方面是否存在常见模式?
和/或
我是否需要在MVC应用程序的路由中添加一些代码以指向WebAPI?
感谢任何帮助或转介。
(仅供参考:我刚读过的两个例子如下,但到目前为止我已阅读了大约20篇文章)
How to add Web API to an existing ASP.NET MVC 4 Web Application project?
Problems (retroactively) adding Web API to asp.net MVC project
答案 0 :(得分:0)
建立路线配置应该对您有所帮助。首先注册WebApi路由路径,然后注册MVC应用程序路由,以便使用Web API处理API,如果不是API,则转到MVC控制器。这对我有用。
这个link可能有助于如何创建虚拟目录。