您的位置:首頁 > 軟件教程 > 教程 > 如何將Generator打包成Nuget進行使用

如何將Generator打包成Nuget進行使用

來源:好特整理 | 時間:2024-04-11 15:49:29 | 閱讀:179 |  標簽: T Ato S C get ug   | 分享到:

前面我們簡單的實現(xiàn)了一個從swagger生成實體類的Generator,在實際使用中,通過nuget包引用使用會更方便,那么本篇文章將介紹如何將Generator打包成Nuget來使用。 打包Nuget 這里我們將GenerateClassFromSwagger.Analysis打包成Nuget進行

前面我們簡單的實現(xiàn)了一個從swagger生成實體類的Generator,在實際使用中,通過nuget包引用使用會更方便。那么本篇文章將介紹如何將Generator打包成Nuget來使用。

打包Nuget

這里我們將GenerateClassFromSwagger.Analysis打包成Nuget進行使用。首先需要修改項目文件。

修改項目文件

在PropertyGroup添加 true 表示在編譯時生成nuget包,并且 false 表示不將生成器作為庫依賴項包括在內(nèi)。以及添加ItemGroup 包含 將生成器打包到nuget包的分析器目錄中。

如果沒有第三方依賴的時候,僅這些配置已經(jīng)足夠了。如果需要依賴第三方組件。這里我們依賴了Newtonsoft.Json的包,則需要添加 來指定和Generator的依賴關系。完整修改后的項目配置如下:


...

編譯項目

修改項目文件后,編譯項目,可以在Debug目錄下看到nupkg文件。將文件上傳到nuget.org,等待上架成功后可以在NUGET包管理器搜索并安裝。

安裝Nuget

首先創(chuàng)建一個GenerateClassFromSwaggerNuget的控制臺項目,然后添加Nuget依賴。搜索GenerateClassFromSwagger.Analysis即可找到。將我們的swagger.json復制一份過來并設置成AdditionalFiles。修改包屬性的OutputItemType和ReferenceOutputAssembly。完整配置如下:


...

編譯控制臺項目

接下來編譯GenerateClassFromSwaggerNuget項目,編譯完成后。可以在分析器看到我們生成的文件。跟我們直接引用項目依賴的效果一致。

輸出文件

同樣,如果我們需要輸出文件,在項目文件中添加EmitCompilerGeneratedFiles標簽。然后再次編譯?梢栽趏bj目錄中找到生成的文件列表。如果需要輸出到指定目錄,則跟上篇文章的方式一致,這里就不贅述了。

結語

本片文章介紹了將Generator打包成Nuget進行使用,可以更方便的在不同項目中使用。

本文代碼倉庫地址https://github.com/fanslead/Learn-SourceGenerator

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認同期限觀點或證實其描述。

相關視頻攻略

更多

掃二維碼進入好特網(wǎng)手機版本!

掃二維碼進入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權,請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2025 haote.com 好特網(wǎng)