Ola*_*son 2 c# visual-studio .net-core
我正在Swashbuckle.AspNetCore为我的 .NET Core web api 项目使用该包。我想添加 XML 注释支持,所以我必须true在应用程序设置中设置 Build => Output => XML 文档文件。
不幸的是,自动生成的路径是绝对的
C:\Users\myUser\...\repository\solution\project\project.xml
所以这只适用于我的机器。有没有办法使用占位符?例如
{{pathToProject}}\project.xml
所以它在本地调试和部署时工作?
dth*_*her 10
有一种简单的方法可以在相对路径中生成 XML 文档文件。只需将DocumentationFile属性设置为true:
<PropertyGroup>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
这已记录在另一个 StackOverflow 答案中: /sf/answers/3298300911/
然后,您可以设置您SwaggerGenOptions的 XML 文档,如下所示:
// Set the comments path for the Swagger JSON and UI.
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
options.IncludeXmlComments(xmlPath);
Run Code Online (Sandbox Code Playgroud)
如此处的示例所示: https ://code-maze.com/swagger-ui-asp-net-core-web-api/#ExtendingDocumentation
您可以更改project.csproj,然后在debug[所需位置]文件夹中获取具有自定义名称的xml文件。我注释掉了默认行。
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<!--<DocumentationFile>C:\Users\furkan.katman\source\repos\WebApplication1\WebApplication1\WebApplication1.xml</DocumentationFile>-->
<DocumentationFile>bin\Debug\ProjectName.XML</DocumentationFile>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
824 次 |
| 最近记录: |