Консольное приложение — .NET 8, тогда как библиотека — .NET 6.
Консольное приложение просто использует библиотеку как ссылку на проект и содержит некоторый код, который я создал (с помощью отражения), чтобы выяснить, какую версию .NET используют библиотеки DLL.
С другой стороны, приложение библиотеки использует пакет (
Код: Выделить всё
System.ReflectionПосле публикации консольного приложения (с помощью публикации в dotnet) я ожидал, что по крайней мере ссылка на пакет внутри библиотеки csproj будет в .NET 6, но это не так.
Я создал образец приложения для проверки: https://github .com/tbragaf/TestNet6WithNet8.
Здесь у меня есть шаги, которым я следую, и результат, который я запускаю, следующий:
Код: Выделить всё
TestNet6WithNet8/AppInNet8/bin/Release/net8.0/osx-arm64/publish/System.Reflection.dll; .NETCoreApp,Version=v8.0;
Может быть, DLL, которую я вижу, является той, которая используется приложением, но тогда где же тогда библиотека из библиотеки? библиотека будет?
Спасибо за помощь,
Я ожидал, что System.Reflection.dll будет ориентирован на .NET 6, учитывая, что библиотека классов использует его и нацелена на .NET 6.
Подробнее здесь: https://stackoverflow.com/questions/782 ... rget-frame
Мобильная версия