日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo

發布時間:2023/12/4 asp.net 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


上一篇里,我已經建立了一個簡單的Web-Demo應用程序。這一篇將記錄將此Demo程序改造成一個Web Api應用程序。

一、添加ASP.NET Core MVC包

1. 在project.json文件添加Microsoft.AspNetCore.Mvc包

{

? "version": "1.0.0-*",

? "buildOptions": {

? ? "debugType": "portable",

? ? "emitEntryPoint": true

? },

? "dependencies": {

? ? "Microsoft.NETCore.App": {

? ? ? "type": "platform",

? ? ? "version": "1.0.0"

? ? },

? ? "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",

? ? "Microsoft.AspNetCore.Mvc": "1.0.0"

? },

? "frameworks": {

? ? "netcoreapp1.0": {

? ? ? "imports": "dnxcore50"

? ? }

? }

}

2. 在cmd窗口使用 dotnet restore 將新添加的包還原至本地

?

二、修改Startup.cs文件內容,添加Asp.Net Mvc能力


using Microsoft.AspNetCore.Builder;

using Microsoft.Extensions.DependencyInjection;


namespace WebApiFrame

{

? ? public class Startup

? ? {

? ? ? ? public void ConfigureServices(IServiceCollection services)

? ? ? ? {


? ? ? ? ? ? // 注入MVC框架

? ? ? ? ? ? services.AddMvc();

? ? ? ? }


? ? ? ? public void Configure(IApplicationBuilder app)

? ? ? ? {

? ? ? ? ? ? // 添加MVC中間件

? ? ? ? ? ? app.UseMvc();

? ? ? ? }

? ? }

}

三、新建Controller,編寫Web Api方法

1. 控制器UsersController

using System;

using Microsoft.AspNetCore.Mvc;

using WebApiFrame.Models;


namespace WebApiFrame.Controller

{


? ? [Route("api/[controller]")]

? ? public class UsersController : Microsoft.AspNetCore.Mvc.Controller

? ? {


? ? ? ? [HttpGet("{id}")]

? ? ? ? public IActionResult Get(int id)

? ? ? ? {

? ? ? ? ? ? var user = new User() { Id = id, Name = "Name:" + id, Sex = "Male" };

? ? ? ? ? ? return new ObjectResult(user);

? ? ? ? }


? ? ? ? [HttpPost]

? ? ? ? public IActionResult Post([FromBody] User user){

? ? ? ? ? ? if(user == null){

? ? ? ? ? ? ? ? return BadRequest();

? ? ? ? ? ? }


? ? ? ? ? ? // TODO:新增操作

? ? ? ? ? ? user.Id = new Random().Next(1, 10);

? ? ? ? ? ? return CreatedAtAction("Get", new { id = user.Id }, user);

? ? ? ? }


? ? ? ? [HttpPut("{id}")]

? ? ? ? public IActionResult Put(int id, [FromBody] User user){

? ? ? ? ? ? if(user == null){

? ? ? ? ? ? ? ? return BadRequest();

? ? ? ? ? ? }


? ? ? ? ? ? // TODO: 更新操作

? ? ? ? ? ? return new NoContentResult();

? ? ? ? }


? ? ? ? [HttpDelete("{id}")]

? ? ? ? public void Delete(int id){

? ? ? ? ? ? // TODO: 刪除操作

? ? ? ? ? ??

? ? ? ? }

? ? }

}

不同于之前的ASP.NET MVC版本,ASP.NET Core MVC里實現Web Api的控制器都繼承自唯一的一個基類Controller。

2. 模型User.cs

namespace WebApiFrame.Models

{

? ? public class User

? ? {

? ? ? ? public int Id { get; set; }

? ? ? ? public string Name { get; set; }

? ? ? ? public string Sex { get; set; }

? ? }

}


最終文件夾結構如下圖

?

四、啟動調試,使用Fiddler工具調試Web Api接口

1. GET Request

GET Response

2. POST Request

POST Response

POST響應碼為201,表示資源創建成功。

在響應頭里有一個Location屬性,這是一個導航屬性,屬性值是一個url地址,直接指向了剛剛Post成功的資源地址。

3. PUT Request

PUT Response

PUT為更新操作。按照規范,當服務更新操作執行成功后,直接通過響應碼204告訴客戶端調用成功,默認沒有響應body。

4. DELETE Request

DELETE Response

DELETE為刪除操作。按照規范,需要通過響應碼判斷是否成功(200)還是失敗(500),默認沒有響應body。

原文地址:http://www.cnblogs.com/niklai/p/5658876.html


.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注

總結

以上是生活随笔為你收集整理的使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。