Śledzę ten artykuł na RazorGenerator i mówi, że muszę dodać odniesienia do:
System.Web.Helpers.dllSystem.Web.WebPages.dllSystem.Web.Razor.dll
Jedyne, co widzę, kiedy to robię, Add Referenceto System.Web.Razor, ale nie wiem, gdzie są inni.
Śledzę ten artykuł na RazorGenerator i mówi, że muszę dodać odniesienia do:
System.Web.Helpers.dllSystem.Web.WebPages.dllSystem.Web.Razor.dllJedyne, co widzę, kiedy to robię, Add Referenceto System.Web.Razor, ale nie wiem, gdzie są inni.
Odpowiedzi:
Te zestawy znajdziesz w grupie Rozszerzenia w obszarze Zestawy w programie Visual Studio 2010, 2012 i 2013 (Menedżer odniesień)
Microsoft.AspNet.WebPages(co jest zależne od tego, Microsoft.AspNet.Razorco jest również potrzebne w przypadku niektórych z tych przestrzeni nazw).
Jeśli chodzi o VS2017, nie znalazłem go w "rozszerzeniach", jest pakiet Nuget o nazwie " microsoft-web-helpers ", który wydaje się być odpowiednikiem System.Web.Helpers.
Miałem ten sam problem, najpierw nie mogłem znaleźć tych dllsna liście .NET components. ale później doszedłem do wniosku, że rozwiązaniem jest:
1- Najpierw zmieniłem target frameworkz .NET framework 4 client profilena .NET framework 4.
2- następnie przewinąć listę .NET components, przechodzą pierwszą listę z system.web..., przewiń w dół i znaleźć drugą listę z system.web... na dole, oni tam.
Mam nadzieję, że to pomoże innym
W VS 2010 kliknij prawym przyciskiem myszy projekt lub odniesienie i kliknij dodaj odniesienie. W wyskakującym okienku wybierz Assemblies -> Extensions -> System.Web.Helpers
Podsumowując wszystkie opcje dla VS 2017, WebHelpers zostało zainstalowane poprzez zainstalowanie MVC w poprzednich wersjach Visual Studio. Jeśli otrzymujesz ten błąd, prawdopodobnie nie masz już zainstalowanych starszych wersji VS.
Tak więc zainstalowanie Microsoft.AspNet.MVCpakietu NuGet będzie wymagało Microsoft.AspNet.WebPagesi Microsoft.AspNet.Razor, a Microsoft.AspNet.WebPagesobejmuje System.Web.Helpers.dll.
Jeśli masz bezpośrednie odwołania do System.Web.Mvc.dll i nie chcesz używać NuGet dla MVC, możesz pobrać Microsoft.AspNet.WebPagesNuGet lub istnieją inne pakiety NuGet, które zawierają tylko System.Web.Helpers.dll, takie jak microsoft-web-helperslub System-Web-Helpers.dll.
Wygląda na to, że istnieją dwie wersje System.Web.Helpers.dll, jedna dla .Net 4.0 i jedna dla 4.5. Wybranie właściwej wersji MVC lub AspNet.WebPages zapewni Ci właściwą.
Zainstalowanie ASP.NET MVC3 stąd powinno pomóc.
W VS2017 zainstalowałem pakiet NuGet: Microsoft.AspNet.WebPages
To załatwiło sprawę.
Powinny znajdować się pod C:\Program Files\Microsoft ASP.Net(lub C:\Program Files (x86)\Microsoft ASP.Netjeśli korzystasz z 64-bitowego systemu operacyjnego) w podfolderze dla MVC3 lub stron internetowych.
Problemem jest brakująca lub nieaktualna wersja MVC. Korzystałem z VS 2015Preview i mogłem rozwiązać problem, instalując najnowszą wersję MVC za pośrednictwem NuGet.
Na wypadek, gdyby ktoś jeszcze się z tym spotkał.
Ten konkretny pakiet NuGet ma zwyczaj tracić odwołania w jednym z naszych projektów. Od czasu do czasu będę musiał uruchamiać następujące polecenie w konsoli Menedżera pakietów, aby przywrócić odniesienia i wszystko jest w porządku
Update-Package Microsoft.AspNet.Webpages -reinstall