標籤:style blog http color io os ar for sp
建立一個空的ASP.NET Web Form項目。
右鍵項目,添加新項,建立Web API控制器類,TestController。
刪除掉TestController預設的內容,編寫如下:
using System.Web.Http;
namespace WebApplication1
{
public class TestController : ApiController
{
[AcceptVerbs("Get")]
public string SayHello()
{
return "Hello World From ASP.NET Web API";
}
}
}
其實,在添加TestController類的時候,預設為我們添加了如下組件:
1、System.Web.Http.dll
2、System.Web.Http.WebHost.dll
3、System.Net.Http.dll
4、System.Net.Http.Formatting
接下來就要把符合類似"api/{controller}/{action}"的模版註冊到ASP.NET的路由集合中去。
建立Globa.asax檔案,編寫如下:
using System.Web.Routing;
using System.Web.Http;
namespace WebApplication1
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
// 符合的格式:webapi/Test/SayHello
RouteTable.Routes.MapHttpRoute("demo", "webapi/{controller}/{action}");
}
}
}
我們把項目放到IIS上,而不是IISExpress上調試。右鍵項目--屬性--Web,設定如下:
儲存設定,跳出如下提示框,點擊"是"。
然後在IIS上多了一個IIS網站。
開啟瀏覽器輸入:http://localhost/WebApplication1/webapi/Test/SayHello
為什麼返回的格式是XML呢?
--因為Chrome瀏覽器的要求標頭,"Accept"請求的類型是xml。
開啟Fiddler,如果把請求的"Accept"設定成"application/html",我們就能擷取到符合格式的內容。
返回結果為狀態代碼200。
ASP.NET Web API實踐系列01,以ASP.NET Web Form方式寄宿