asp.net-mvc – ASP.net Web API和System.Net.Http

按照本文中的示例: 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附带的最终版本)

解决方法

在< system.web>下的Web.config文件添加以下配置节点(假设您的应用程序在.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>

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

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....