Ответ 1
Я просто столкнулся с этой проблемой сейчас:
Я переустановил инфраструктуру optmization и все работало нормально:
Install-Package Microsoft.AspNet.Web.Optimization
Надеюсь, это поможет кому-то!
Я размещаю новый веб-сайт как свой основной сайт, и он работает красиво.
Все мои приложения под корневым URL также работают, за исключением одного. Это устаревшая система (С#.net), которая сильно используется и, к сожалению, у меня нет доступа к исходному коду.
Когда я запускаю устаревшее приложение www.mysite.com/crm, я получаю следующую ошибку:
Server Error in '/crm' Application.
Compilation Error
Description: An error occurred during the compilation of a resource required to
service this request. Please review the following specific error details and modify
your source code appropriately.
Compiler Error Message: CS0234: The type or namespace name 'Optimization' does not
exist in the namespace 'System.Web' (are you missing an assembly reference?)
Source Error:
Line 17: <pages>
Line 18: <namespaces>
Line 19: <add namespace="System.Web.Optimization" />
Line 20: </namespaces>
Line 21: <controls>
Source File: e:\WebSites\newsite\Web.config Line: 19
Show Detailed Compiler Output:
Show Complete Compilation Source:
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18446
Ошибка заключается в перечислении web.config для основного сайта, который работает. Однако это происходит только при запуске приложения под основным сайтом.
Это выполняется на сервере Server 2008 R2 и IIS7
Как это исправить? Что еще я могу попробовать?
UDPDATE
Я не знаю, имеет ли это значение, но Web.Config ссылается на ошибку для нового веб-сайта, а не для устаревшего приложения. Я не уверен, почему основная конфигурация сайта является фактором.
ПОЯСНЕНИЯ
У меня нет доступа к исходному коду устаревшего приложения, поэтому я не могу настроить свойства для этого приложения. Вставка "Оптимизации" на сайт не исправила. Он может работать для других пользователей, но не для меня.
РАБОТА ВОКРУГ
Я настраиваю новый сайт под другим URL-адресом и перенаправляю трафик на корневой URL-адрес на новый URL-адрес и позволяю устаревшему приложению работать до тех пор, пока мы не сможем его заменить. Очень неряшливое решение, но оно работает пока.
Я просто столкнулся с этой проблемой сейчас:
Я переустановил инфраструктуру optmization и все работало нормально:
Install-Package Microsoft.AspNet.Web.Optimization
Надеюсь, это поможет кому-то!
Я столкнулся с такой же проблемой после создания новой области в MVC5. Существует автоматическое создание файла web.config. Проверьте файл web.config в папке " Виды ", есть строка
<add namespace="System.Web.Optimization" />
если вам это нужно, установите его, используя следующую команду.
Install-Package Microsoft.AspNet.Web.Optimization
в консоли диспетчера пакетов, как показано ниже
Если вы считаете нужным, просто удалите строку <add namespace="System.Web.Optimization"/>
из следующего раздела в файле web.config
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<!--<add namespace="System.Web.Optimization" />-->
<add namespace="AutoParts.Web" />
</namespaces>
Проверьте папку Bin
для устаревшего приложения. Возможно, вам просто нужно будет зайти в эту DLL. Пространство имен System.Web.Optimization
существует как ASP.NET 4.5, поэтому оно может даже не поддерживаться. Устаревшее приложение может быть старше этого.
В Visual Studio.. Перейдите в свой проект и посмотрите дерево ссылок.
щелкните правой кнопкой мыши System.Web.Optimization и выберите " Properties
найдите path
, вы найдете его пустым, если это так, тогда загляните на свой компьютер для имен файлов System.Web.Optimization.dll и скопируйте их в папку bin
вашего проекта и это решит
Я просто переживал: "CS0234 С# Тип или имя пространства имен" Оптимизация "не существует в пространстве имен" System.Web "(вам не хватает ссылки на сборку?)" И нашел эту страницу stackoverflow. - Причина для меня состояла в том, что я переименовал веб-форму (aspx page), с которой я работал, и хотел переименовать открытый частичный класс за этой формой. Это привело к указанному коду ошибки. Я добавил " using System.Web.Optimization;
" к коду позади (С#), "очистил" решение, затем "построил" затем решение, затем "перестроил" решение, и теперь ошибка исчезла, а использование оператора wasn ' т, поэтому я избавился от него. У моего решения больше нет таких ошибок или ошибок, поэтому я решил поделиться этой странной историей. Мне, вероятно, не нужно было использовать этот оператор " using
", но что угодно.
Главная к области
@Html.ActionLink("My Area Home", "Index", "Home", new { area = "MyArea" }, null)
Площадь до главного
@Html.ActionLink("Home", "Index", "Home", new { area = "" }, null)