2010-08-03 4 views
1

Я только начинаю использовать Visual Studio 2010 и .NET 4.0. Я создал новый проект WPF для DLL, созданный для .NET 2.0. Когда я построить проект, я получаю кучу предупреждений, как этот:Справочные проблемы в .NET 4.0 для .NET 2.0 dll/project

The referenced assembly 
"MicroFour StrataFrame Business...processorArchitecture=MSIL" 
could not be resolved because it has a dependency on 
"System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
which is not in the currently targeted framework ".NETFramework,Version=v4.0,Profile=Client". 
Please remove references to assemblies not in the targeted framework 
or consider retargeting your project. 

Когда я ссылаться на проект, который я создал, что цели 3.5, он не может найти какой-либо из пространств имен (во время компиляции), хотя они отображаются в браузере объектов, и intellisense правильно показывает их.

Есть ли что-то, что мне не хватает, что нужно сделать для ссылки на более старую сборку .NET?

ответ

4

Ваша сборка 2.0 имеет ссылку на System.Web. Ссылка автоматически пересылается в вашу целевую структуру, 4.0. Поэтому он пытается использовать System.Web, version 4.0.0.0. Проблема в 4.0 (на самом деле это началось с 3.5), теперь есть понятие профиля клиента. Профиль клиента имеет меньший набор ссылочных сборок, все, что связано с веб-сервером, было удалено. Это должно сделать платформу .NET более легкой/простой загрузкой для конечных пользователей.

С VS 2010 и .NET 4, профиль клиента продвигается намного сложнее, MS действительно хочет, чтобы мы его использовали. Таким образом, ваш проект .NET 4 по умолчанию настроен на профиль клиента. Ваша ссылка на сборку хочет System.Web, поэтому в этом случае вам нужно перейти на полный профиль.

+0

Спасибо! Вот так! : D –

5

Существует очень мало смысла в настройке профиля клиента для .NET 4.0. Загрузка составляет 41 МБ, полная версия - 48 МБ, только на 15% больше. К сожалению, это значение по умолчанию в VS2010, просто измените его с помощью Project + Properties, вкладки Application, Target framework combo.

Профиль клиента делает сделать большой смысл, если вы настроите 3.5, полная установка составляет ~ 350 МБ. Огромная разница объясняется предпосылками, для .NET 4.0 требуется как минимум XP SP3 или Vista SP1. Но 3.5 устанавливается на любую версию Windows> 2000. Таким образом, программа установки 3.5 содержит множество необходимых обновлений для неуправляемых компонентов Windows, используемых .NET. Установщик веб-страниц уменьшает шум, который сильно ударяется.

+0

Спасибо за дополнительную информацию. Мне нравится понимать, что происходит! –

Смежные вопросы