Package: NSwag.MSBuild
Important for .NET Core: Assembly loading#net-core
After installing the NSwag.MSBuild NuGet package in your project, you can use the variable $(NSwagExe) in your .csproj file to run the NSwag command line tool in an MSBuild target. This way the tools can easily be updated via NuGet. The /controller parameter can be omitted to generate a Swagger specification for all controllers.
For better testability and stable output (defaults may change), it is recommended to create an NSwag Configuration Document (e.g. with NSwagStudio) and use:
Recommended for .NET Core/NET5 and later:
OnBuildSuccess
For more information about the missing DLLs in .NET Core, see Assembly loading#net-core.
More information on nswag run.
Runtime:
If you need to run the NSwag command line in x86 mode, use the $(NSwagExe_x86) placeholder. For .NET Core projects, one of the placeholders $(NSwagExe_Core##) or $(NSwagExe_Net##) (e.g. $(NSwagExe_Core31) for .NET Core 3.1) should be used instead of $(NSwagExe).
Available properties:
NSwagExe NSwagExe_x86 NSwagExe_Core21 NSwagExe_Core31 NSwagExe_Net50 NSwagExe_Net60 NSwagExe_Net70 NSwagDir NSwagDir_Core21 NSwagDir_Core31 NSwagDir_Net50 NSwagDir_Net60 NSwagDir_Net70 NSwag.MSBuild.props
See Command Line for more information.
Also see ServiceProjectReference for the new feature.