動態 Restful API 生成

2022-07-03 22:36:15 字數 1334 閱讀 2206

通常在ddd開發架構中,我們寫完服務層需要在控制器中寫api,今天介紹乙個元件plus.autoapi可以用它來動態生成 restful 風格的 webapi,不用寫 controller。

在你的應用服務層中新增元件

install-package plus.autoapi
在 startup 中註冊 autoapi

public void configureservices(iservicecollection services)

);}

addautoapi同時也支援各種 options 引數,可以自行檢視。

讓你的服務直接或者間接實現iautoapi,新增特性[autoapi]即可,示例**如下:

如果你想讓某個服務不自動生成api,可以給特性傳遞引數:[autoapi(disabled = true)]讓生成的api相容 swagger,需要新增下面這句**。

services.addswaggergen(options =>

);options.docinclusionpredicate((docname, description) => true);});

同時自動生成api也可以和控制器共存,互不影響。你可以手動指定http方法,也可以根據預設規則自動建立。

預設自動建立http方法的規則如下:

static plusconsts()

;}

上面**最終生成的api路由如下:

restful api文件生成器 神器

我現在還不是很懂到底什麼才是restful api,目前理解的大概就是 一種介面,只管拿引數進來,做一系列處理,返回json字串形式的結果。而restful api風格的api文件,就是用來說明這個介面需要傳進什麼引數,每個引數是什麼含義,有什麼要求,經過處理之後,該介面返回了什麼內容,每乙個資料代...

動態生成CS檔案(動態生成C 類)

1.codetypedeclaration 可用於表示宣告類 結構 介面或列舉的 官方傳送門 2.codememberfield 表示某種型別的字段的宣告 官方傳送門 3.codedomprovider 可用於建立和檢索 生成器和 編譯器的例項。生成器可用於以特定的語言生成 而 編譯器可用於將 編譯...

動態生成Table DataSet

querymsmqlist querymsmq new querymsmqlist private coreexchange listquerylist querymsmq.mreceive dataset dsqueuemsmq new dataset datatable dsqueuetable...