Сервер Asp.net Dev использует неправильную версию фреймворка?

В настоящее время разрабатывает веб-приложение ASP.NET с VS2008. Я остановил разработку на несколько недель, и когда я вернулся, у моего проекта появилась следующая проблема:

Весь проект компилируется нормально (все нацелены на Framework3.5SP1). Однако когда я запускаю его (с ASP.NET Development Server), я получаю сообщение (из браузера) о том, что произошла ошибка компиляции "Сообщение об ошибке компилятора: CS0234: имя типа или пространства имен" DirectoryServices "не существует в пространство имен 'System' (вам не хватает ссылки на сборку?)"

В нижней части страницы с ошибкой информация о версии: Информация о версии: Microsoft .NET Framework Версия:2.0.50727.3053; ASP.NET версия: 2.0.50727.3053

Сервер использует.NET Framework версии 2? Но все мои проекты нацелены на 3,5

Есть ли простой способ предотвратить это?

Я должен добавить:

переустановил.net Framework версии 3.5 + SP1, но проблема остается той же. Здесь важно отметить, что я не использую полноценный IIS, а просто "сервер разработки Asp.net", поставляемый с VS2008. (CTRL + F5/ Запуск)

3 ответа

Решение

Причина в том, что.NET 3.5 не является отдельной платформой, такой как v2.0 или v1.1. Это просто расширение фреймворка 2.0. Расширение предоставляет разработчикам новые языковые функции, такие как анонимные типы, методы расширения, лямбда-выражения и, конечно, LINQ .... и AJAX теперь интегрированы. Поэтому вы просто используете 2.0 в IIS.

Вы должны попытаться установить.NET Framework 3.5 на этом сервере, сервер IIS будет автоматически использовать правильную версию.

С уважением, Сем

Скорее всего, вы машина web.config ссылается на 2.0. Вы можете перенастроить его до 3.5 через консоль управления IIS. Или вы можете изменить элемент в вашем файле web.config, чтобы добавить и точно указать для каждой сборки 3.5.

Просто гадать здесь. Может ли быть так, что один из вашей машины разработки или сервера обновился до.Net 3.5 SP1, а другой нет?

Другие вопросы по тегам