系列目錄
三. 集成輕量級ORM框架——SqlSugar
先從目的說起:
該系列欲從零開始,以.NET Core為框架,搭建出一個功能完善的WebApi框架。實現后台管理系統、前台系統和App系統的統一管理。
該框架欲集成Swagger作為接口顯示文檔,集成SqlSugar作為數據庫操作ORM,集成LayUI作為后台管理系統前端框架,集成支付寶和微信的SDK實現支付功能;
實現接口權限驗證功能,實現從后台管理系統無代碼化的自動生成實體類、自動生成基礎的增刪改查接口、自動生成基礎版的后台管理頁面;
然后這一系列是我在搭建代碼的同時同步編寫的,一方面是當做備忘記錄,一方面也是一種自己對自己的激勵。
所以以下內容會充斥着大量的自言自語,自說自話,請做好心理准備~
願望很美好,但還是要從最基礎的功能開始寫起。
既然說了是從零開始,那就從新建項目開始吧~
新建一個ASP.NET Core Web應用程序,取名為RayPI。
這里選擇API模板
生成項目之后,控制器默認生成了一個ValuesController,里面只有幾個簡單的RESTful風格的接口,分別對應增刪改查的功能,沒有涉及到數據庫數據,只是給我們作為參考而已。
我們可以直接F5進入調試運行狀態,默認調用的是values的獲取集合接口,結果是這樣的:
這是一個最基礎、最原生的“光禿禿”的.NET Core API環境,離我們想要的API框架還很遠,但是其實已經成功一半了,因為好的開始是成功的一半~
接下來,我們要在項目里集成Swagger插件。
Swagger是一個API接口文檔幫助插件,使用它,可以將我們編寫的接口自動生成一個規范化的文檔,其他開發人員(主要是負責的對接接口的前端人員)就可以通過瀏覽器訪問對應的地址,查看接口的相關信息。
當然,swagger也提供了基礎的測試功能,這個下一章再講~
下面開始引入swagger插件
方法有兩個:
1)可以去swagger官網或github上下載源碼,然后將源碼(一個類庫)引入自己的項目;
2)直接利用NuGet包添加程序集應用。
因為很少有需要更改swagger源碼的需求,所以這里我們選擇比較簡單的第二種方法。
依次點擊 工具=>NuGet包管理器=>管理解決方案的NuGet程序包
在彈出的頁面中,搜索“Swashbuckle.AspNetCore”,然后勾選RayPI項目(如果解決方案里有多個類庫,只需要勾選主項目,也就是包含控制器的項目),點擊安裝
安裝完成之后,在項目的依賴項里可以看到多出了一個引用
這時如果運行調試,在域名后面輸入/swagger,會發現wagger還沒有起作用,因為還沒有在項目的啟動項里添加swagger服務。
下面添加服務:
打開Startup.cs類,編輯ConfigureServices類
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services) { services.AddMvc(); #region Swagger services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Version = "v1.1.0", Title = "Ray WebAPI", Description = "框架集合", TermsOfService = "None", Contact = new Swashbuckle.AspNetCore.Swagger.Contact { Name = "RayWang", Email = "2271272653@qq.com", Url = "http://www.cnblogs.com/RayWang" } }); }); #endregion }
編輯Configure類
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseMvc(); #region Swagger app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiHelp V1"); }); #endregion }
到這,已經完成swagger的添加,F5運行調試,在域名后面輸入/swagger,點擊回車
可以看到,swagger將我們項目的接口(這里只有一個系統默認生成values接口)自動生成一個可視化的接口文檔,點擊對應接口,可以查看接口的相關信息,也可以在當前頁進行簡單的測試調用。
本章我們一起從零開始搭建了基於.NET Core 的API原生環境,並且簡單地集成了swagger插件。
下一章,我們將對swagger進行進一步的詳細設置。