我是ASP.Net MVC和ASP.Net web api的新手。
我从事过Web服务并使用它们。
但我不知道如何托管ASP.Net web api并从另一个ASP.Net MVC应用程序中使用它。我找到了一些人们正在使用同一项目中的api的示例。在现实世界中,我真的怀疑用法仅限于一个项目。
有些人可以发布一些可以解释相同的例子或链接吗?
答案 0 :(得分:5)
如果您主要使用API从Web客户端进行AJAX类型调用,则在MVC Web应用程序中托管ASP.NET Web API会让您感觉非常真实。将API和Web应用程序放在同一个项目中可以消除跨域Ajax调用的问题,这需要JSONP。但是,如果需要,ASP.NET Web API可以通过WebApiContrib提供的自定义格式化程序(如JsonMediaTypeFormatter)轻松支持JSONP。
ASP.NET Web API使开发REST API变得简单。您使用与在MVC中开发控制器相同的约定。要与Web应用程序分开创建它,只需创建一个MVC 4项目并使用ApiController而不是标准Controller来创建控制器以呈现视图。然后就像将任何Web应用程序一样部署到IIS(您也可以在Windows服务中自行托管ASP.NET Web API)。这是an example on the official ASP.NET Web API website that calls a REST API developed in ASP.NET Web API from a console application。这个网站上有更多的例子。