1

我有一个.NET 4.5 MVC 4项目,我webapi.helppage通过 NuGet 将包添加到其中。

然后ApiController在我的项目中添加了以下内容:

public class ValuesController : ApiController
{
    // GET api/values
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    // GET api/values/5
    public string Get(int id)
    {
        return "value";
    }

    // POST api/values
    public void Post([FromBody]string value)
    {
    }

    // PUT api/values/5
    public void Put(int id, [FromBody]string value)
    {
    }

    // DELETE api/values/5
    public void Delete(int id)
    {
    }
}

查看帮助页面是否正常工作,但它apidescription为以下GetApiExplorer()调用返回一个空集合:

    public ActionResult Index()
    {
        return View(Configuration.Services.GetApiExplorer().ApiDescriptions);
    }

但是,我可以通过导航到示例来使用示例 api 控制器/api/values

有谁知道为什么apidescription找不到?

4

1 回答 1

2

我创建了一个新的 web api 项目并开始一个一个地添加我安装的 NuGet 包,结果Glimpse是导致这些包不显示的原因。

我在这里找到了更多信息:ASP.Net Web API 帮助页面返回空输出

到目前为止,最合适的解决方法是将以下内容添加到web.config一瞥部分:

<glimpse defaultRuntimePolicy="On" endpointBaseUri="~/Glimpse.axd">
<inspectors>
      <ignoredTypes>
        <add type="Glimpse.AspNet.Inspector.RoutesInspector, Glimpse.AspNet"/>
      </ignoredTypes>
    </inspectors>
</glimpse>
于 2013-08-21T09:32:58.970 回答