Подтвердить что ты не робот

Можете ли вы объединить .NET framework Versions в решении?

Наша кодовая база, где я работаю, -.NET 2.0. Для наших новых сборок/DLL/веб-приложений я хотел бы воспользоваться преимуществами, которые может предложить 3.5.

Можно ли комбинировать платформы .NET(для каждой сборки) в решении? Есть ли какие-либо связанные с IIS оговорки?

Я хотел бы услышать любую положительную/отрицательную/обратную связь. Дайте мне знать!

Спасибо!

4b9b3361

Ответ 1

Да, вы можете сделать это в Visual Studio и называется Multi-Targeting.

У Скотта Гатри есть замечательная запись в блоге Поддержка нескольких таргетинга в Visual Studio.

VS 2008 был первым выпуском Visual Studio, которая включала поддержка нескольких таргетинга для .NET. Это означало, что вы могли бы использовать VS 2008 для создания и редактирования не только .NET 3.5, но также и .NET 3.0 и .NET 2.0. Эта позволили разработчикам быстрее обновить и использовать новые Возможности Visual Studio - без необходимости требовать новая версия .NET должна быть установленных на клиентах и производственные серверы, на которых приложения.

Приветствия

Ответ 3

EDIT: я был не прав. Вы можете перейти к ссылке 3. + сборки в версии 2.0, потому что CLR - это то же самое. Это будет не так, если вы перейдете от 2.0/3. + к 4.0, так как есть новая версия CLR.

http://abdullin.com/how-to-use-net-35-syntax-and-compiler-features-for-net-20/

Ответ 4

Если вы можете дождаться новой платформы .NET 4.0, вы сможете запускать dll для каждой версии бок о бок в том же процессе.

Ответ 5

Это не должно быть проблемой..NET 2.0 RTM через .NET 3.5 SP2 использует ту же самую версию CLR. Они отличаются только количеством собраний, которые включены. Формат сборки тот же. Конечно, если вы воспользуетесь сборкой, которая включена только в .NET 3.5, вы должны убедиться, что 3.5 фактически установлен на целевой машине. Вы быстро узнаете, если это не так.

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

Ответ 6

В качестве побочной заметки у нас есть несколько старых библиотек 1.0, которые мы использовали в версии 2.0, и до сих пор используем их в версии 3.5 без перекомпиляции. Таким образом, там есть некоторая обратная совместимость.

Ответ 7

У вас не может быть .Net 1.1 assmeblies, выполняющегося в том же процессе, что и сборка .Net 2.0+ - попытка сделать это приведет к сбою.

Что касается IIS, это означает, что вы не можете иметь .Net 1.1 сайты/виртуальные каталоги, работающие в том же пуле приложений, что и сайты .Net 2.0 и выше - вам нужно создать отдельный пул приложений, чтобы сохранить код .Net 1.1 работает в другом процессе. (Это можно сделать только в IIS 6.0 и выше, то есть не в Windows XP)

Однако, как отмечает nobugz -.Net 2.0 до .Net 3.5 все используют один и тот же CLR, поэтому различные версии .Net-кода могут быть смешаны в одной и той же сборке без проблем - это также справедливо для IIS (.Net 2.0 и .Net 3.5 может с радостью сосуществовать в одном и том же пуле приложений)