В каком CLR будет выполняться мой код? - PullRequest
3 голосов
/ 11 августа 2009

Предположим, у меня есть две версии .Net (.Net 1.1,2.0) на моих машинах разработки. Если я развертываю свое приложение X для .Net 1.1 и развертываю другое приложение Y. agaings .Net 2.0 framework.

Теперь мне нужно знать, в каком CLR (1.1 или 2.0) будут работать оба моих приложения?

Также укажите мне причину?

Ответы [ 3 ]

12 голосов
/ 11 августа 2009

Эта статья MSDN объясняет все это довольно четко:

Версия .NET Framework, которая приложение работает на определяется следующим образом:

  • Если версия .NET Framework что приложение было построено против присутствует на компьютере, приложение работает на этой версии.

  • Если версия .NET Framework что приложение было построено против нет и конфигурации файл не указывает версию в <supportedRuntime> Элемент, приложение работает на последней версии .NET Framework, который присутствует на компьютере.

  • Если версия .NET Framework что приложение было построено против нет и конфигурации файл указывает версию в <supportedRuntime> Элемент, приложение работает на последней версии что указано в заявке файл конфигурации и присутствует на компьютер.

Как Сэм упоминает в комментариях, единственным исключением является ASP.NET, где используемая версия указана в консоли управления IIS.

2 голосов
/ 11 августа 2009

Просто чтобы добавить к ответам выше: если вы говорите приложения asp.net, это меняет все правила игры. Помимо параметра конфигурации инфраструктуры в диспетчере iis, платформа загружается для каждого пула приложений, поэтому необходимо убедиться, что все приложения, совместно использующие пул приложений, используют одну и ту же версию платформы.

1 голос
/ 11 августа 2009

Начиная с Visual Studio 2008 и далее, вы можете выбрать конкретную версию .Net Framework - 2.0, 3.0 или 3.5

.

До VS2008 его исправили -

VS2005 предназначается для .Net Framework v2.0

VS2003 предназначается для .Net Framework v1.1

VS2002 предназначается для .Net Framework v1.0

Если вы укажете цель, для нее потребуется ЧТ-перикулярная версия .Net Framework.

ИСПРАВЛЕНИЕ: Он будет работать на ТО версии или более поздней, совместимой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...