In meiner MVC-Anwendung hat In der Datei _Layout.cshtml den folgenden Code ...
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
Aber das Problem ist, dass es heißt The name 'Scripts' does not exists in the current context
.
Ich habe die Assembly bereits zur Referenz und zur Bundle-Konfiguration als hinzugefügt using System.Web.Optimization;
Dies passiert auch für @styles . Was soll ich tun?
c#
asp.net-mvc
razor
Tarzanbappa
quelle
quelle
System.Web.Optimization
. Aber siehe stackoverflow.com/questions/22832435/…The name 'Scripts' does not exists in the current context
der nach dem HinzufügenSystem.Web.Optimization
in der web.config von view aufgetreten ist, aber ja, Intellisense ist immer noch dasselbe, okay, danke, lassen Sie mich diese Frage überprüfen.Das Folgende in .chtml löst das Problem
@using System.Web.Optimization @Scripts.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr")
quelle
@using System.Web.Optimization
wieder entfernt und die Datei _Layouts.cshtml geschlossen und die Lösung neu erstellt, dann die Datei wieder geöffnet, war die Intellisense wieder kaputt. Durch Zurücksetzen der Leitung ohne Neuerstellung wurde sie sofort wiederhergestellt. Dies war in einem Projekt, das ursprünglich keine BundleConfig-Klasse hatte (& nicht in Global.ascx.cs registriert war) und System.Web.Optimization war ursprünglich nicht in meiner web.config. Das alles manuell hinzugefügt. In Projekten, die von Anfang an BundleConfig.cs hatten, trat dieses Problem nie auf.Bitte folgen Sie meinem Schritt, um dies zu löschen
Zuerst
Microsoft.AspNet.Web.Optimisation
App_Start
Ordner eineBundleConfig.cs
Datei enthält .<namespaces> <add namespace="System.Web.Optimization"/> </namespaces>
inViews/web.config
DateiBundleConfig.RegisterBundles(BundleTable.Bundles);
inGlobal.asax.cs
quelle
Es gibt immer noch ein Intellisense-Problem. Sie können diesen Code zur Application_Start () -Methode hinzufügen, die sich in der Datei global.asax befindet.
quelle
System.Web.Optimization
Namespace registriert ist (Referenced Assemblies, web.config,using
Anweisung ...).In VisualStudio 2019 konnte ich diesen Fehler beheben. Microsoft.Web.Optimization ist jetzt im Paket 'Microsoft.AspNet.Web.Optimization' enthalten. Laden Sie das Paket mit NuGet Packing Manager herunter. Fügen Sie in der CSHML-Datei "@using System.Web.Optimization;
quelle