У меня есть приложение, которое я обновил с 3.5 до 4.0. Но не все мои сторонние сборки основаны на .net 4.0. Как получается, что я до сих пор могу без проблем ссылаться на эти сборки? Например, если другая сборка ссылается на system.dll 2.0, а мой обновленный проект ссылается на system.dll 4.0, как .net справляется с этим?
Очевидно, что это не было проблемой при обновлении между 2.0 и 3.5, потому что они используют одинаковые версии BCL и CLR, но 4.0 использует совершенно разные BCL и CLR, верно?
Вот пример. У меня есть приложение, созданное с использованием WF (Windows Workflow) в версии 3.5. Я обновил приложение до версии 4.0, но мне не нужно было вносить все важные изменения в новую версию рабочего процесса. Это все еще использует старую версию 3.5 WF.