ASP.NET核心生成的app.config无效

时间:2016-07-01 17:19:56

标签: c# asp.net asp.net-core asp.net-core-1.0

我试图将旧项目移植到网络ASP.NET核心平台。运行我的Web项目会提供旧的不正确的DLL引用"无法加载文件或程序集' Newtonsoft.Json,Version = 9.0.0.0,"。我没有使用任何引用9.0.0的项目或包,所有net aspnetcore组件都引用9.0.1。

我找到的是编译器生成一个* .exe.config文件,该文件对一些引用的net45项目有以下重定向:

  <dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="6.0.0.0" newVersion="9.0.0.0" />
    <bindingRedirect oldVersion="4.5.0.0" newVersion="9.0.0.0" />
    <bindingRedirect oldVersion="8.0.0.0" newVersion="9.0.0.0" />
  </dependentAssembly>

我认为这个问题是newVersion与项目其余部分中解析的版本不匹配。有没有办法来解决这个问题?这是一个错误吗?

2 个答案:

答案 0 :(得分:1)

将软件包更新为次要版本可能无法完全修改配置。在配置文件中,将newVersion="9.0.0.0"更改为newVersion="9.0.1.0"以匹配参考版本。

您还应该能够将重定向组合到 <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.1.0" />

答案 1 :(得分:1)

从RC2升级到RTM后,我遇到了同样的问题。原来,旧配置文件从未使用正确的重定向进行更新。删除文件并重建所有工作后。