【问题标题】:general System.Web.Razor error (also Postal project)一般 System.Web.Razor 错误(也是邮政项目)
【发布时间】:2013-02-28 20:42:10
【问题描述】:

VS 2012,使用 Postal 0.8.0 的 MVC4 应用

当我 NuGet 安装 Andrew's Davey's Postal 0.8.0 时,它可以在我的开发机器上运行,但是当我部署它时,我收到以下错误消息:

无法加载文件或程序集“System.Web.Razor,Version=2.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。系统找不到指定的文件。

我花了几天时间试图让它工作。此问题的原因是什么,您如何解决?

【问题讨论】:

    标签: asp.net-mvc-4 postal


    【解决方案1】:

    当您使用 NuGet 安装 Postal 时,它会将 System.Web.Razor 2.0 替换为 System.Web.Razor 1.0。我不得不删除对 System.Web.Razor 1.0 的引用,然后在 System.Web.Razor 2.0 中重新添加。您必须在 System.Web.Razor 的属性中另外将 Copy Local 设置为 True,然后重新构建项目。一旦我这样做了,VS2012 将 System.Web.Razor.dll 复制到部署的 bin 目录中,问题就解决了。

    Postal 还将这些依赖项添加到 web.config。我删除了它们,它仍然可以正常工作。

      <dependentAssembly>
        <assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
            <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="RazorEngine" publicKeyToken="9ee697374c7e744a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.0.8.0" newVersion="3.0.8.0" />
      </dependentAssembly>
    

    更新 2013 年 3 月 3 日

    AD 刚刚发布了 Postal v0.8.2,将 System.Web.Razor 更新到 2.0。

    随着 ASP.NET 和 Web Tools 2012.2 (http://www.asp.net/vnext/overview/fall-2012-update) 的发布,WebGrease 依赖项现在似乎是默认设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-25
      • 2011-07-07
      • 1970-01-01
      • 2012-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多