9

按照本文中的例子:http: //blogs.msdn.com/b/yaohuang1/archive/2012/05/21/asp-net-web-api-generating-a-web-api-help-page-using -apiexplorer.aspx

我已经设置了所有内容来为我的 Web API 项目提供文档,但我遇到了一个问题。当我尝试使用时,@api.HttpMethod我得到了他在文章中描述的错误。他说您必须在 web.config 中手动添加对System.Net.Http, Version=2.0.0.0 程序集的引用(即使它默认位于 References 文件夹中),但是如果您按照他的示例通过传统方式添加程序集web.config 中的标签.....好吧,您会发现它在 4.5 中不再是有效标签,并且一切都通过 AssemblyRedirects 完成。我试过了,但没有用。任何有这个问题或知道如何帮助更改 web.config 的人?我错过了一个会议吗?

Visual Studio 2012 MVC4 Web API 项目(不是来自 Nuget,VS2012 附带的最终版本)

4

1 回答 1

28

在节点下的 Web.config 文件中添加以下配置<system.web>(假设您的应用在 .NET 4.5 上运行,targetFramework属性设置为 4.5):

<compilation targetFramework="4.5">
  <assemblies>
    <add assembly="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  </assemblies>
</compilation>

还在<configuration>节点下的根级别添加以下内容:

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" />
      <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

这应该可以解决您的问题。

于 2012-10-15T09:01:48.207 回答