我已經安裝了WebApi 2.2,IIS託管的Swashbuckle 5.4.0。我的基本swagger文檔沒有任何問題顯示,但是我指向的XML文檔中沒有任何內容正在UI內呈現,也沒有在JSON中可見。所以我看到的是沒有評論,總結等方法Swashbuckle 5.4.0和Xml文檔
我知道XML文檔已被找到,因爲我沒有得到任何錯誤(當我改變路徑到一個不存在的文件,錯誤出現),但由於某種原因,它只是不包括文件內的任何內容。我已經嘗試重新安裝Swashbuckle和WebApi的nuget包,我嘗試過生成和重新生成XML,甚至嘗試重新構建一個基本版本的XML來測試,但到目前爲止還沒有運氣。
有什麼想法可能會出現問題,或者我可以嘗試的任何建議?
下面的代碼片段:
控制器:
[RoutePrefix("rest/v1/helloworld")]
public class HelloWorldController : ApiController
{
/// <summary>
/// Hello World
/// </summary>
/// <remarks>Hello World basic test</remarks>
/// <response code="401">Unauthorized</response>
[HttpGet]
[Route("")]
public HttpResponseMessage Get()
{
HttpActionContext aC = this.ActionContext;
return aC.Request.CreateResponse(HttpStatusCode.OK, "Hello World");
}
}
XML文檔說明:
<?xml version="1.0"?>
<doc>
<assembly>
<name>SwaggerApi</name>
</assembly>
<members>
<member name="M:HelloWorldController.Get">
<summary>Hello World</summary>
<remarks>Hello World basic test</remarks>
<response code="401">Unauthorized</response>
</member>
</members>
</doc>
SwaggerConfig.cs片段:
EnableSwagger(c =>
{
c.SingleApiVersion("v1", "ASP");
c.IncludeXmlComments(string.Format(@"{0}\bin\SwaggerApi.xml",System.AppDomain.CurrentDomain.BaseDirectory));
})
您的設置看起來與我的幾乎完全相同。我沒有看到你的唯一的事情是EnableSwaggerUi語句。不知道這是否會有問題? – MichaelDotKnox
嗨邁克爾,我實際上切斷了EnableSwaggerUi語句前的片段,但它在那裏。不過謝謝你的建議。 – DiscordAndCookies