亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET MVC Web API使用示例

發布時間:2020-07-08 19:50:25 來源:網絡 閱讀:3363 作者:guwei4037 欄目:編程語言

上篇博客講解rest服務開發時,曾經提到過asp.net mvc中的rest api,由于篇幅原因,沒有在上篇博客中進行講解,這里專門拿出來進行討論。還是一樣引用上次的案例,用asp.net mvc提供的web api來進行IP地址歸宿地查詢接口的開發。

由于我機器裝的是win8企業版操作系統,VS版本是2012,因此我們選擇使用VS自帶的MVC4模版中的Web API來創建一個項目。

ASP.NET MVC Web API使用示例

ASP.NET MVC Web API使用示例

點擊確定后,VS會自動為我們創建一個完整的可運行的ASP.NET Web API的項目。

從項目的目錄結構可以看出,ASP.NET Web API與ASP.NET MVC項目的結構幾乎一致。我們刪除為我們默認創建并打開的ValuesController文件(示例性文件,可以參考)。

既然要打造一個IP地址查詢服務接口,為了跟上文的服務形式一致,我們還是使用GET請求方式的服務,不過我們這次使用MVC中的Web API來實現。

首先在Models文件夾中建立一個Address模型類。

namespace MvcWebApi.Models 
{ 
    public class Address 
    { 
        public string IPAddress { get; set; } 
        public string Province { get; set; } 
        public string City { get; set; }   
    } 
}

接著我們在Controllers文件夾下建立一個IPAddressController控制器,需要注意的是,這個IPAddressController一定要繼承自ApiController類,這樣服務才能暴露出來。

namespace MvcWebApi.Controllers 
{ 
    public class IPAddressController : ApiController 
    { 
        private static IList<Address> addresses = new List<Address> 
        {  
            new Address(){ IPAddress="1.91.38.31", Province="北京市", City="北京市" },    
            new Address(){ IPAddress = "210.75.225.254", Province = "上海市", City = "上海市"  }, 
        }; 
         
        public IEnumerable<Address> GetIPAddresses() 
        { 
            return addresses; 
        } 
         
        public Address GetIPAddressByIP(string IP) 
        { 
            return addresses.FirstOrDefault(x => x.IPAddress == IP); 
        } 
         
    } 
}

只要做上面兩步就可以運行這個項目了,我們按Ctrl+F5運行整個項目,出現了如下的頁面。


ASP.NET MVC Web API使用示例

我們點擊右上角的API鏈接。

ASP.NET MVC Web API使用示例

可以看到我們定義的Web API的接口的使用方法以及說明。

既然是服務,能夠被其它程序調用就需要一個持續保障它運行的環境,我們可以將這個寫好的Web API的項目發布到IIS當中。

我們可以使用VS自帶的發布功能進行發布,并映射到IIS應用程序目錄當中。

ASP.NET MVC Web API使用示例

ASP.NET MVC Web API使用示例

我們點擊IIS右側的瀏覽,看看服務有沒有能夠正常運行。

ASP.NET MVC Web API使用示例

我們按照文檔的提示,我們在地址欄輸入http://192.168.0.2/webapi/api/ipaddress。

ASP.NET MVC Web API使用示例

可以看到,我們收到了Web API定義的服務提供的數據。同樣的我們試一下另外一個接口方法。

ASP.NET MVC Web API使用示例

OK,這樣就好了。

但是如果我們需要返回JSON格式怎么辦呢?有個簡便的方法,在Global.asax.cs文件中,添加一個方法即可。

ASP.NET MVC Web API使用示例

關于這段代碼的原因,可以參考:http://blog.miniasp.com/post/2012/10/12/ASPNET-Web-API-Force-return-JSON-format-instead-of-XML-for-Google-Chrome-Firefox-Safari.aspx,這里不重復。

我們運行這個項目后,重復發布。

當我們再次在瀏覽器中運行時,就可以看到默認返回的是JSON格式了(IE默認就是JSON)。

ASP.NET MVC Web API使用示例

ASP.NET Web API就開發好了,至于在C#程序中怎么調用,可以參考我上篇博客中的代碼。如果要在頁面中調用,可以通過JQuery等JS庫請求URL即可。


參考資料:

http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api

http://blog.miniasp.com/post/2012/10/12/ASPNET-Web-API-Force-return-JSON-format-instead-of-XML-for-Google-Chrome-Firefox-Safari.aspx

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

墨竹工卡县| 拉萨市| 广丰县| 海阳市| 宁波市| 南康市| 托克逊县| 凯里市| 察隅县| 台北县| 泰州市| 阳东县| 同德县| 岗巴县| 湄潭县| 凤冈县| 柘荣县| 大田县| 灌云县| 库伦旗| 广平县| 阿坝县| 乐昌市| 侯马市| 平罗县| 登封市| 大洼县| 德江县| 林甸县| 潼关县| 平泉县| 吉木萨尔县| 云安县| 舟曲县| 亳州市| 余庆县| 富蕴县| 科技| 福安市| 华坪县| 博白县|