ASP.NET Web API實踐系列01,以ASP.NET Web Form方式寄宿

來源:互聯網
上載者:User

標籤: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方式寄宿

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.