使用breeze在VS2013中获取异常System.Web.Http?

时间:2013-10-25 05:39:32

标签: asp.net breeze

我正在尝试使用Breeze和AngularJS从Jhon Papa创建HotTowel示例应用程序。我已经安装了所有必需的软件包,在安装 Breeze.WebApi 软件包之前一切正常,但是在我安装了这个软件包后,我在WebApiRoute配置方法上得到了以下异常。

<ExceptionMessage>
Could not load file or assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, 
PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's 
manifest definition does not match the assembly reference. (Exception from HRESULT: 
0x80131040)

我已将 System.Web.Http dll引用到项目但是使用最新的5.0.0版本。

2 个答案:

答案 0 :(得分:1)

您可以尝试执行绑定重定向以指向新程序集,看它是否有效。

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
      </dependentAssembly>
  </assemblyBinding>
</runtime>

答案 1 :(得分:0)

这可能是因为尝试在VS 2013中使用新的Microsoft WebApi2 nuget软件包。以前Breeze不支持这些。

截至目前,Breeze 1.4.5支持Microsoft的ASP.NET WebApi 2和Entity Framework 6.请参阅http://www.breezejs.com/documentation/download