日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

用ASP.NET Web API技术开发HTTP接口(一)

發(fā)布時(shí)間:2025/4/14 65 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用ASP.NET Web API技术开发HTTP接口(一) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

《轉(zhuǎn)載自 "浮點(diǎn)指向"》

啟動(dòng)Visual Studio 2015,新建一個(gè)ASP.NET Web應(yīng)用程序,命名為SimpleAPI。選擇Empty模板,并勾選“Web API”,無(wú)身份驗(yàn)證,不添加單元測(cè)試。

準(zhǔn)備用SQL Server數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)數(shù)據(jù),因此要安裝下Entity Framework框架,免去寫(xiě)繁瑣SQL語(yǔ)句的麻煩。打開(kāi)工具-》程序包管理器控制臺(tái)輸入以下命令安裝。

Install-Package EntityFramework

在Web.config文件里配置數(shù)據(jù)庫(kù)連接代碼,打開(kāi)這個(gè)文件,在configuration節(jié)點(diǎn)內(nèi)添加連接字符串,其中星號(hào)部分換成SQLServer的數(shù)據(jù)庫(kù)名稱(chēng)。

<connectionStrings> <add name="DefaultConnection" connectionString="Data Source=Localhost;Initial Catalog=******;Integrated Security=SSPI;" providerName="System.Data.SqlClient" /> </connectionStrings>

建立數(shù)據(jù)模型

在Models目錄下新建一個(gè)名為Friend.cs的類(lèi)文件。

public class Friend {public int ID { get; set; }public string FirstName { get; set; }public string LastName { get; set; }public string Address { get; set; }public string City { get; set; }public string PostalCode { get; set; }public string Country { get; set; }public string Notes { get; set; } }

同時(shí)建立數(shù)據(jù)庫(kù)的Context類(lèi)文件。

public class FriendContext : DbContext {public FriendContext(): base("name=DefaultConnection"){}public DbSet<Friend> Friends { get; set; }protected override void OnModelCreating(DbModelBuilder modelBuilder){modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();} }

說(shuō)明:

1、name=DefaultConnection要和Web.config中的數(shù)據(jù)庫(kù)連接字符串中的name一致。

2、OnModelCreating重載函數(shù)的作用是讓創(chuàng)建的數(shù)據(jù)表名稱(chēng)為單數(shù)格式,即為Friend,而不是Friends。

然后在程序包管理控制臺(tái)啟用Migrations,生成Migrations目錄,以及目錄中的Configuration.cs配置文件。

Enable-Migrations

再依次執(zhí)行下面2條命令,就可以把剛才建立的數(shù)據(jù)模型導(dǎo)入到SQLServer中了,很方便。

Add-Migration xxx Update-Database

其中xxx可任意填寫(xiě),VS會(huì)生成一個(gè)名為201508051223177_xxx.cs文件,201508051223177是當(dāng)前時(shí)間,文件包含Up和Down兩個(gè)方法。現(xiàn)在我們?cè)俚絊QLServer中刷新下查看,會(huì)發(fā)現(xiàn)一個(gè)名為Friend的數(shù)據(jù)表就建立好了。

下面利用Configuration.cs中的Seed函數(shù)添加一些測(cè)試數(shù)據(jù),在Seed方法下添加以下模擬數(shù)據(jù)。

var friend = new Friend {FirstName = "三",LastName = "張",Address = "南京西路",City = "上海",Country = "中國(guó)",PostalCode = "200041",Notes = "www.zhaomu.com" }; context.Friends.Add(friend); friend = new Friend {FirstName = "四",LastName = "李",Address = "三里屯",City = "北京",Country = "中國(guó)",PostalCode = "100600",Notes = "www.sohu.com" }; context.Friends.Add(friend); friend = new Friend {FirstName = "五",LastName = "王",Address = "花城大道",City = "廣州",Country = "中國(guó)",PostalCode = "510623",Notes = "www.163.com" }; context.Friends.Add(friend);

然后執(zhí)行Update-Database命令后,這些數(shù)據(jù)就成功導(dǎo)入到SQL Server的數(shù)據(jù)表里面了。

創(chuàng)建控制器

在Controllers目錄下添加控制器,選擇“Web API 2 控制器 - 空”,我們將手工編寫(xiě)API程序的讀取、添加、修改、刪除各常用接口。控制器文件命名為FriendController.cs。

讀取Get方法,在FriendController.cs中添加以下代碼。

private FriendContext db = new FriendContext();public IEnumerable<Friend> Get() {return db.Friends.AsEnumerable(); }

編譯后,我們?cè)L問(wèn)?http://localhost:61570/api/friend(61570是隨機(jī)端口),如果一切正常的話會(huì)出現(xiàn)以下XML格式的數(shù)據(jù),說(shuō)明數(shù)據(jù)讀取成功。

轉(zhuǎn)換成json格式顯示

現(xiàn)在比較流行json格式的API接口數(shù)據(jù),如果我們要讓數(shù)據(jù)以json格式顯示,需要修改App_Start目錄下的WebApiConfig.cs文件,在//Web API 配置和服務(wù)的注釋下添加以下代碼:

config.Formatters.Remove(config.Formatters.XmlFormatter); var jsonFormatter = config.Formatters.JsonFormatter; jsonFormatter.SerializerSettings.Formatting = Newtonsoft.Json.Formatting.Indented; jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

說(shuō)明:第一行是去掉默認(rèn)的XML格式,這樣輸出數(shù)據(jù)就會(huì)以json格式顯示,第三行是將輸出結(jié)果縮進(jìn)顯示,第四行則是將字段名稱(chēng)改成camelCase格式,即postalCode這樣的json統(tǒng)一格式。然后我們?cè)俅芜\(yùn)行,發(fā)現(xiàn)結(jié)果就是我們想要的了。

轉(zhuǎn)載于:https://www.cnblogs.com/DaiKeung/p/9120362.html

總結(jié)

以上是生活随笔為你收集整理的用ASP.NET Web API技术开发HTTP接口(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。