上下文
我已经将一个连接的服务添加到我的.NET 6项目中,并使用NSwagCSharp代码生成器生成客户端。(在我以前的项目中,我使用了NSwagStudio)
我发现在.csproj文件中可以添加选项:
<OpenApiReference Include="OpenAPIs\swagger.json" CodeGenerator="NSwagCSharp" ClassName="MyClient">
<SourceUri>https://localhost:xxxx/swagger/v1/swagger.json</SourceUri>
<Options>/UseBaseUrl:false /GenerateClientInterfaces:true /InjectHttpClient:false, /DisposeHttpClient:false,
</Options>
</OpenApiReference>
看起来这些选项与NSwagStudio保存到.nswag文件中的选项非常相同。我不确定这只是一个猜测,其中一些似乎工作到目前为止。(这是在某个地方记录的吗?))
然而,NSwagStudio也保存了默认值(我不知道是什么),所以在一个典型的.nswag文件中,json中有大约80个设置:
"codeGenerators": {
"openApiToCSharpClient": {
...
"generateClientInterfaces": true,
"clientBaseInterface": null,
... up to more than 80 lines...
问题
这将导致.csproj文件中的<Options>
元素中出现很长的一行。(似乎不允许换行)?有没有办法使用外部选项文件(如json .nswag文件)来配置代码生成选项?
1条答案
按热度按时间wbgh16ku1#
我相信你可以通过使用你提到的.nswag文件并遵循这里的模式来实现这一点:
https://github.com/RicoSuter/NSwag/wiki/NSwag-Configuration-Document