【问题标题】:Migrating .NET Framework 4.5 to 4.6.1 causes errors for Views HTML Helpers将 .NET Framework 4.5 迁移到 4.6.1 会导致 Views HTML Helpers 出现错误
【发布时间】:2017-05-04 07:37:42
【问题描述】:

使用的 IDE :: VS.NET 2015、2017

版本升级 :: 4.5 到 4.6.1

视图代码有一些 HTML 帮助程序,例如 @Html.TextBoxFor 和 @Html.PasswordFor。它在它们下方显示红线,并且在运行时页面抛出异常。

我的 asp.net 解决方案内部包含 30 多个项目。我已将目标框架升级到 4.6.1 。我尝试遵循帖子中提供的解决方案 VS 2015 IntelliSense: Assembly Not Referenced Error。我尝试在 web.config 中复制程序集引用,但到目前为止没有运气。我也尝试在最新的 VS.NET 2017 中打开该项目。但我又遇到了同样的问题。

请建议如何解决这些错误。这让我很紧张,我浪费了很多时间试图解决它。

  • 类型 'Expression' 是在一个不是 参考。您必须添加对程序集 'System.Core, 版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089'。

  • “ModelErrorCollection”不包含“Any”的定义,并且没有 扩展方法“任何”接受类型的第一个参数 可以找到“ModelErrorCollection”(您是否缺少使用 指令还是程序集引用?)

【问题讨论】:

  • 如果您的问题是关于 4.6.1,为什么还要用 .net core 标记它? System.Core 程序集!= .NET Core 框架。无论如何,我的建议是不要尝试同时升级您的 IDE 和框架版本。做一个成功,然后另一个(顺序不是很重要的AFAIK)。那么你也许可以缩小问题的范围。
  • 哪些帮手?哪个版本? MVC 不是 .NET 本身的一部分,它是一个单独的包。如果引用错误或使用错误的包版本,修改web.config 将无济于事
  • 请找到添加的截图。

标签: asp.net visual-studio


【解决方案1】:

这是一个奇怪的问题。我的项目中发生了几个程序集绑定重定向,并在 web.config 中定义。

  <!--<dependentAssembly>
        <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-5.2.2.0" newVersion="5.2.2.0"/>
     </dependentAssembly>-->

我在 web.config 中注释了上述行并重新启动了 VS.NET IDE。问题终于解决了。

【讨论】:

    猜你喜欢
    • 2017-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-09
    • 1970-01-01
    • 1970-01-01
    • 2013-09-02
    • 1970-01-01
    相关资源
    最近更新 更多