最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Asp.net core Web Api配置swagger中文的實(shí)現(xiàn)

 更新時(shí)間:2023年09月15日 09:48:08   作者:hqwest  
swagger是一個(gè)api文檔自動(dòng)生動(dòng)工具,還集成了在線調(diào)試. 可以為項(xiàng)目自動(dòng)生成接口文檔, 非常的方便快捷,具有一定的參考價(jià)值,感興趣的可以了解一下

在你的 Web API 項(xiàng)目中使用 Swagger 的.NET Core 封裝 Swashbuckle 可以幫助你創(chuàng)建良好的文檔和幫助頁(yè)面,Swagger (OpenAPI) 是一個(gè)與語(yǔ)言無(wú)關(guān)的規(guī)范,用于描述 REST API。 它使計(jì)算機(jī)和用戶無(wú)需直接訪問(wèn)源代碼即可了解 REST API 的功能

1、OpenAPI 與 Swagger

Swagger 項(xiàng)目已于 2015 年捐贈(zèng)給 OpenAPI 計(jì)劃,自此它被稱為 OpenAPI。 這兩個(gè)名稱可互換使用。 不過(guò),“OpenAPI”指的是規(guī)范。 “Swagger”指的是來(lái)自使用 OpenAPI 規(guī)范的 SmartBear 的開(kāi)放源代碼和商業(yè)產(chǎn)品系列。

簡(jiǎn)而言之:

OpenAPI 是一種規(guī)范。

Swagger 是一種使用 OpenAPI 規(guī)范的工具。 例如,OpenAPIGenerator 和 SwaggerUI

OpenAPI 規(guī)范是描述 API 功能的文檔。 該文檔基于控制器和模型中的 XML 和屬性注釋。 它是 OpenAPI 流的核心部分,用于驅(qū)動(dòng)諸如 SwaggerUI 之類的工具

2、Swagger UI

Swagger UI 提供了基于 Web 的 UI,它使用生成的 OpenAPI 規(guī)范提供有關(guān)服務(wù)的信息。 Swashbuckle 和 NSwag 均包含 Swagger UI 的嵌入式版本,因此可使用中間件注冊(cè)調(diào)用將該嵌入式版本托管在 ASP.NET Core 應(yīng)用中。 Web UI 如下所示:

3、開(kāi)搞

打開(kāi)啟動(dòng)vs2019,

啟動(dòng)項(xiàng)目,如圖:

原來(lái)是英文的,我們要中文的,WeatherForecastController.cs是一個(gè)示例,刪除即可,WeatherForecast.cs同時(shí)刪除,當(dāng)然不刪除也行,這里是刪除,創(chuàng)建自己的控制器

1創(chuàng)建model實(shí)體

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace HouseSysWebApplication.Model
{
    ///<summary>
    /// 圖片實(shí)體類
    /// </summary>
    public class Book
    {
        /// <summary>
        /// 編號(hào)
        /// </summary>
        public int id { get; set; }
        /// <summary>
        /// 書(shū)名
        /// </summary>
        public string title { get; set; }
        /// <summary>
        /// 作者
        /// </summary>
        public string author { get; set; }
        /// <summary>
        /// 價(jià)格
        /// </summary>
        public float price { get; set; }
        /// <summary>
        /// 圖片地址
        /// </summary>
        public string image { get; set; }
    }
}

2 添加控制器BookController

Controller文件夾上右鍵,選擇“添加”,選擇“控制器”,選擇API,

using HouseSysWebApplication.Model;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace HouseSysWebApplication.Controllers
{
    /// <summary>
    /// 圖書(shū)控制器
    /// </summary>
    [Route("api/[controller]")]
    [ApiController]
    public class BookController : ControllerBase
    {
        List<Book> bookList = InitBookStore();
        private static List<Book> InitBookStore()
        {
            List<Book> bookList = new List<Book>();
            Book b1 = new Book();
            b1.id = 101;
            b1.author = "楊康";
            b1.title = "Java從入門到精通";
            b1.price = 89.5f;
            b1.image = "img01.jpg";
            bookList.Add(b1);
            Book b2 = new Book();
            b2.id = 102;
            b2.author = "天涯";
            b2.title = "Java項(xiàng)目開(kāi)發(fā)實(shí)戰(zhàn)入門";
            b2.price = 49.5f;
            b2.image = "img02.jpg";
            bookList.Add(b2);
            Book b3 = new Book();
            b3.id = 103;
            b3.author = "標(biāo)貴";
            b3.title = "Java編程思想";
            b3.price = 76f;
            b3.image = "img03.jpg";
            bookList.Add(b3);
            Book b4 = new Book();
            b4.id = 104;
            b4.author = "西法";
            b4.title = "web開(kāi)發(fā)手冊(cè)";
            b4.price = 78.3f;
            b4.image = "img04.jpg";
            bookList.Add(b4);
            Book b5 = new Book();
            b5.id = 105;
            b5.author = "海風(fēng)";
            b5.title = "唐詩(shī)宋詞";
            b5.price = 29.5f;
            b5.image = "img05.jpg";
            bookList.Add(b5);
            return bookList;
        }
        /// <summary>
        /// 獲取所有圖書(shū)
        /// </summary>
        /// <returns>圖書(shū)列表</returns>
        [HttpGet("all")]
        public List<Book> BookStore()
        {
            return bookList;
        }
        /// <summary>
        /// 查詢指定名稱的圖書(shū)
        /// </summary>
        /// <param name="bookName">圖書(shū)標(biāo)題</param>
        /// <returns>圖書(shū)列表</returns>
        [HttpGet("search")]
        public IEnumerable<Book> BookStore(string bookName)
        {
            return bookList.FindAll(x => x.title.Contains(bookName)).AsEnumerable();
        }
    }
}

這里要注意的是代碼的完整注釋要寫上,既然是寫接口,生成的文檔所以要詳細(xì),可讀性強(qiáng),啟動(dòng)后效果

3 生成xml文檔

項(xiàng)目右鍵,選擇屬性,點(diǎn)擊生成,勾選

將項(xiàng)目編譯生成,就會(huì)自動(dòng)創(chuàng)建xml文檔

4修改Startup.cs

只要改一個(gè)地方就行

title是標(biāo)題,具體描述自己決定

5編譯生成,啟動(dòng),看效果,立馬中文

選擇某個(gè)接口,比如第一個(gè),點(diǎn)擊測(cè)試,沒(méi)有問(wèn)題,說(shuō)明一切杠杠的

注釋沒(méi)有問(wèn)題,相當(dāng)?shù)膸洠瑔为?dú)訪問(wèn)也正常

到此這篇關(guān)于Asp.net core Web Api配置swagger中文的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Asp.net core Web Api配置swagger內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

甘南县| 徐水县| 仙居县| 通海县| 于田县| 杭锦旗| 乐至县| 通州市| 宜川县| 淳安县| 平原县| 比如县| 浦江县| 沾益县| 诸暨市| 清水县| 宁城县| 内乡县| 郧西县| 屏东县| 龙游县| 来凤县| 莒南县| 贺兰县| 昌宁县| 宁远县| 黎平县| 婺源县| 广东省| 阿拉善左旗| 卢湾区| 双峰县| 汪清县| 左权县| 阿坝县| 泰州市| 扶绥县| 乌兰察布市| 马山县| 康保县| 卫辉市|