![](/img/trans.png)
[英]Upgrading old .Net 35 Project to 4.x -> Where do I download Reactive Framework 4.x
[英].NET 5 Project not really working with old 3rd Party .NET Framework 2.x/4.x assemblies
我目前正在使用新的 C# .NET 5 Blazor 项目。 当我们从 .NET 4 框架(使用旧代码的新项目)“升级”我们的应用程序时,我目前遇到一个问题,我找不到任何解决方案。
问题:我使用第 3 方程序集编写代码。 这个带有最新版本的第 3 方程序集的目标是 .NET 4.8。 现在,这个第 3 方程序集由于访问 .NET 5 框架 (AppDomain.CurrentDomain.SetupInformation.ConfigurationFile) 中不再存在的 AppDomain 部分而引发异常。 由于微软在 .NET 5 中删除或更改了 AppDomain 的使用方式。
现在我的问题是。 有没有办法让第三方程序集仍然加载它的目标并使用 .NET 框架 4.8 而不是主要项目 .NET 5 框架? 尽管我仍然能够使用它(不应抛出异常,因为 .NET 4.x 中存在 AppDomain 代码),而无需等待公司调整组件以支持 .NET 5?
我尝试使用“AssemblyLoadContext”,但到目前为止还没有成功。
感谢您提供任何信息或帮助! 注意安全!
除非另有说明,否则应假定 .Net 的新主要版本与旧版本不兼容。 然而,这条规则似乎有不少例外。
从.Net framework 4.8 到.Net core 和.Net 5 的变化非常显着。 虽然为了顺利过渡已经做了大量工作,但有一些功能已经从 .Net 5 中简单地删除了:
有一些技术将保持 .NET 框架特定,例如 AppDomains、Remoting 等、WCF 服务器和 WWF。
解决方案应该是将任何第三方库更新到针对 .net 标准、.net 核心或 .Net 5 的版本。大多数流行的库似乎已经更新。
如果这不可能,您可能需要考虑礼貌地请求作者更新库,或者自己更新库以防它们是开源的。
作为最后的手段,您可能希望用支持最新.Net 版本的其他东西替换库。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.