C# 即使项目在html中成功生成,Visual Studio也会显示错误

C# 即使项目在html中成功生成,Visual Studio也会显示错误,c#,asp.net,asp.net-mvc,razor,C#,Asp.net,Asp.net Mvc,Razor,Intellisense不适用于任何razor html标记。在所有razor html标记中也显示红线(@html.TexBox、@html.DropdownList MultiSelect等) Visual Studio错误窗口中显示三种类型的错误 错误#1: 方法的类型参数 'System.Web.Mvc.Html.InputExtensions.TextBoxFor(System.Web.Mvc.HtmlHelper, System.Linq.Expressions.Expression

Intellisense不适用于任何razor html标记。在所有razor html标记中也显示红线
(@html.TexBox、@html.DropdownList MultiSelect等)

Visual Studio错误窗口中显示三种类型的错误

错误#1:

方法的类型参数 'System.Web.Mvc.Html.InputExtensions.TextBoxFor(System.Web.Mvc.HtmlHelper, System.Linq.Expressions.Expression>,, System.Collections.Generic.IDictionary)“”不能为空 从用法推断。尝试显式指定类型参数

错误#2:

无法指定编译动态表达式所需的一个或多个类型 建立是否缺少对Microsoft.CSharp.dll和的引用 System.Core.dll

错误#3:

错误40方法的类型参数 'System.Web.Mvc.Html.InputExtensions.HiddenFor(System.Web.Mvc.HtmlHelper, System.Linq.Expressions.Expression>)' 无法从用法推断。尝试指定类型参数 明确地说

有关更多信息,请参阅所附链接



这种情况不时发生在我身上,通常重建包含错误的项目对我来说是可行的。你试过了吗


让我知道。

如果关闭和重建没有对其进行排序,我怀疑您的项目文件有问题


创建一个新的ASP.net web应用程序,并在上面复制文件。有点痛,但可能会奏效。

问题已解决,删除了以下文件夹中的所有内容

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET 文件C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET 档案


谢谢大家抽出时间。:)

您的web.config中需要有以下部分(Root应该可以)



根据您的参考更换System.Web.Helpers版本。

显示您的代码。如果你不告诉我们你做错了什么,我们就不知道你做错了什么。我看到Intellisense对Razor文件失去同步。通常关闭和打开VS修复它。你试过了吗?此外,默认情况下,如果视图中有错误,则构建不会失败,因此您必须手动注意这些编译问题。请参阅我的答案以获得解决方案。请参阅我通常会重新启动VS、清理解决方案并最终重建的链接。仍然存在问题仍然存在问题尝试添加另一个视图,复制内容,然后删除旧视图。无法执行此操作。在TFS中工作请尝试一下,看看它是否有效,如果有效,您可能可以查看两个项目文件之间的差异,并手动更新TFS中的一个项目文件。它一直这样做吗?没有任何改变。我在System.Linq(System.Core组件的一部分)上也有类似的问题。经过数小时的搜索,终于找到了有效的解决方案@阿尼尔,非常感谢。
    <system.web>
        <compilation debug="true" targetFramework="4.6.1">
            <assemblies>
                <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            </assemblies>
       </compilation>
    </system.web>