.net Dll показывает framework 4.0 после преобразования в 4.5.2

Я нашел частичный ответ на свой вопрос в этой теме:

Здесь в stackoverflow нельзя изменить целевую структуру...

В моем случае фреймворк был успешно преобразован в 4.5.2, и добавление метода с асинхронностью и ожиданием, которые, я уверен, являются частью фреймворка 4.5, метод успешно запускается exe-файлом, ссылающимся на библиотеку. Так что могу предположить, что библиотека действительно скомпилирована с использованием фреймворка 4.5.2.

Однако при ссылке в любом другом проекте библиотека показывает в своих свойствах, что она скомпилирована под framework 4.0. а когда отладчик загружает сборку выводит, что она скомпилирована под framework 4.0... Так кто прав? мой код, выполняющий методы фреймворка 4.5, или строки, сообщающие, что библиотека находится в фреймворке 4.0?

Я проверил, что возможно в моих возможностях, если в моей установке есть какие-либо файлы .targets, и да, во временной папке msbuild-targets есть два, Microsoft.Common.targets и Microsoft.Csharp.targets, но я m не могу понять, заставляют ли эти файлы компилятор использовать framework 4.0. В основном потому, что на этой машине я компилирую прямо в Visual Studio.

У меня есть несколько решений с использованием библиотек компонентов, скомпилированных 4.5.2, которые работают правильно. Поэтому я действительно не знаю, как быть уверенным, что моя библиотека скомпилирована под правильный фреймворк и что библиотека показывает правильный фреймворк в своих свойствах и при загрузке.

Если кто-то знает, как этого добиться, заранее спасибо.


person Sabrina_cs    schedule 11.04.2016    source источник


Ответы (1)


Если в свойствах вашего проекта указано, что вы нацелены на .NET 4.5.2, значит, он создан для работы с .NET 4.5.2 и более поздними версиями.

Возможно, у вас есть путаница с версиями CLR и Framework. .NET 4.x (любой) работает с CLR (т. е. Common Language Runtime) 4.0.

Проверьте версии и зависимости .NET Framework, чтобы получить более подробную информацию по этой теме.

person Matías Fidemraizer    schedule 11.04.2016
comment
Спасибо, что успокоили меня, я ожидал найти версию фреймворка 4.5.2 на панели свойств библиотек, и я предположил, что файлы были правильными, так как тест с асинхронным ожиданием работал, но перед выпуском программного обеспечения для моих клиентов я предпочел бы быть Конечно. Еще раз спасибо, что нашли время ответить. - person Sabrina_cs; 13.04.2016