Страницы

Поиск по вопросам

понедельник, 24 февраля 2020 г.

Можно ли из приложения на Framework 4 использовать библиотеку Framework 4,5

#c_sharp #net


Допустим, есть ПК с Framework 4.5 и есть приложение, которое написано под 4,0.

Данное приложение расширяемое.

Возможна ли корректная работа такого приложения, если подсунуть ему DLL, которая
будет собрано под 4,5?

Собственно, столкнулся с тем, что приложение собранное под 4,0 смогло работать с
AngleSharp, который собран по 4,5. На машине пользователя стоял 4,5 фреймфорк . Не
почудилось ли мне это? Всегда думал, что младший не может использовать функционал старшего.
    


Ответы

Ответ 1



Коль скоро ваше приложение запускается под .NET 4.5, то вы можете загружать сборки, собранные под 4.5, и они будут работать корректно, вне зависимости от того, использованы ли в них фичи, которых не было в .NET 4.0. Потому что весь код -- и вашего приложения, и сторонней сборки -- будет работать под .NET 4.5.

Ответ 2



.NET Framework версии 4.5 был выпущен в таком виде, что обновление до этой версии с версии 4.0 можно было выполнить просто заменив все dll файлы. Более того, Ваше приложение даже не заметит подмены - сборки 4.5 определяются так же, как и сборки 4.0 Попробуйте выполнить следующий код в приложении с разными .NET Framework. Console.WriteLine(Environment.Version.Major); Console.WriteLine(Environment.Version.Build); Для обоих версий (4.0 и 4.5) вывод будет: 4 30319 Касательно Вашего вопроса, приложение будет работать стабильно, Майкрософт гарантирует полную обратную совместимость с версией 4.0 для версии 4.5, Вам даже подменять ничего не нужно.

Комментариев нет:

Отправить комментарий