入坑.net core(二)新建一個.net core api


我這用的是.net core 3.1,沒有可點擊https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral下載

 

 

 

屁話不多少,先打開VS2019,創建一個API

 

配置一下項目

 

 

 

 

 

 

好現在我們.net core 3.1 Api項目就創建成功了,接下來看配置

 

 

 

先配置:swagger             Swashbuckle.AspNetCore程序包

項目右擊,管理NuGet程序包

 

 

 再配置:Startup.cs文件

 

Swagger中間件

ConfigureServices下加:

  services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
             
            });

Configure下加

 app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
            });

如下圖

 

 

 

現在加一個控制器,看一下swagger接口

  //路由設置
    [Route("api/[controller]/[action]")]
    [ApiController]
    public class HomeController : ControllerBase
    {
        /// <summary>
        /// 獲取文本
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public ActionResult<string> Get()
        {
            return "Hello World!";
        }
        /// <summary>
        /// 兩數相加
        /// </summary>
        /// <param name="num1">第一個數</param>
        /// <param name="num2">第二個數</param>
        /// <returns></returns>
        [HttpGet]
        public ActionResult<int> Sum(int num1, int num2)
        {
            return num1 + num2;
        }
        /// <summary>
        /// 兩數相減
        /// </summary>
        /// <param name="param">參數</param>
        /// <returns></returns>
        [HttpPost]
        public ActionResult<int> Subtract(Param param)
        {
            int result = param.num1 - param.num2;
            return result;
        }
    }
    /// <summary>
    /// 參數
    /// </summary>
    public class Param
    {
        /// <summary>
        /// 第一個數
        /// </summary>
        public int num1 { get; set; }
        /// <summary>
        /// 第二個數
        /// </summary>
        public int num2 { get; set; }
    }

如下圖

 

 

現在運行看下效果

路徑改為:swagger/index.html

 

 接着再配置xml注釋

先引入NuGet包:Microsoft.Extensions.PlatformAbstractions

如下圖

 

 繼續右鍵:屬性

 

 

繼續在Startup文件下配置如下代碼

 #region 
                var basePath = PlatformServices.Default.Application.ApplicationBasePath;
                //var basePath = AppDomain.CurrentDomain.BaseDirectory;
                //Core.Admin.webapi.xml是我的項目生成XML文檔的后綴名,具體的以你項目為主
                var xmlPath = Path.Combine(basePath, "FirstApi.xml"); 
                //第二個參數為true的話則控制器上的注釋也會顯示(默認false)
                c.IncludeXmlComments(xmlPath, true);
                #endregion

如下圖

 

 

 

 

可能會出問題的是xml路徑沒有配置正確

此路徑為 basepath根目錄下xml路徑

 

 配置好注釋xml運行一下api

 

 

 現在注釋就出來了。

就這么多了,每天成長一點點。加油。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM