无法解决冲突 - 与Razor MVC

时间:2016-06-18 08:23:25

标签: c# asp.net-mvc asp.net-mvc-3 razor

当我编译我的项目时,我的剃刀会出现以下错误:

  

1> ------构建开始:项目:Icent.RIME.Web,配置:调试任何CPU ------

     

1>无法解决" System.Web.Razor,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"之间的冲突。和" System.Web.Razor,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"。选择" System.Web.Razor,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"任意。

     

1>无法解决" System.Web.WebPages.Deployment,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"之间的冲突。和" System.Web.WebPages.Deployment,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"。选择" System.Web.WebPages.Deployment,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"任意。

     

1>考虑app.config重新映射程序集" System.Web.Razor,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"来自版本" 1.0.0.0" [c:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Pages \ v1.0 \ Assemblies \ System.Web.Razor.dll] to Version" 2.0.0.0" [C:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Pages \ v2.0 \ Assemblies \ System.Web.Razor.dll]解决冲突并摆脱警告。

     

1>考虑app.config重新映射程序集" System.Web.WebPages.Deployment,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"来自版本" 1.0.0.0" [c:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Pages \ v1.0 \ Assemblies \ System.Web.WebPages.Deployment.dll] to Version" 2.0.0.0" [C:\ Program Files(x86)\ Microsoft ASP.NET \ ASP.NET Web Pages \ v2.0 \ Assemblies \ System.Web.WebPages.Deployment.dll]解决冲突并摆脱警告。

     

1> C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets(1819,5):警告MSB3247:发现同一依赖程序集的不同版本之间存在冲突。在Visual Studio中,双击此警告(或选择它并按Enter键)以修复冲突;否则,将以下绑定重定向添加到"运行时"应用程序配置文件中的节点:

     

1> C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets(1819,5):警告MSB3277:发现同一个从属程序集的不同版本之间存在冲突解决。当日志详细程度设置为详细信息时,这些引用冲突将在构建日志中列出。

     

1> Icent.RIME.Web - > C:\ Users \用户mkiriko \文件\ rime_au_webapp \ Icentric.RIME.Web \ BIN \ Icentric.RIME.Web.dll

     

==========构建:1成功,0失败,10最新,0跳过==========

当我查看我的观点时,所有剃刀方法(如@ Url.Action(..)都有错误"名称' url'在当前背景下不存在。

Views文件夹中的我的web.config如下所示:

<configuration>
  <configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    </sectionGroup>
  </configSections>

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <!--   <add namespace="Telerik.Web.Mvc"/>
        <add namespace="Telerik.Web.Mvc.UI"/> -->
      </namespaces>
    </pages>
  </system.web.webPages.razor>

如何修复此错误?我的项目很旧并使用MVC3

1 个答案:

答案 0 :(得分:0)

由于此错误显示:

  

1&GT;无法解决&#34; System.Web.Razor之间的冲突,   Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35&#34;和   &#34; System.Web.Razor,Version = 1.0.0.0,Culture = neutral,   公钥= 31bf3856ad364e35&#34 ;.选择&#34; System.Web.Razor,   Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35&#34;   任意。

它似乎已经替换了你的DLL或者可能已经改变了你的框架。只需用它们的建议版本替换DLL