由于历史原因,我必须在我的项目 .NET 8 中使用 .NET Framework dll 才能管理业务问题。
问题是 dll 使用 System.ServiceModel,因为它使用 WCF 调用远程服务器。
我可以在 VS2022 中添加我的 dll 作为参考,没有问题。
但是当我执行我的项目时,当我调用 dll 中的方法时,会出现异常,因为它尝试调用 WCF 层:
无法加载文件或程序集“System.ServiceModel,版本=3.0.0.0, 文化=中立,PublicKeyToken=b77a5c561934e089'。指定文件 找不到。'
我尝试从 nuget 添加包,例如 System.ServiceModel.Primitives 或 System.ServiceModel.Http,但没有成功。
我无权访问该dll的源代码。有什么方法可以在.NET 8项目中使用它吗?
首先,根据你的bug报告,看来版本太低了。
.NET 8 是一个新平台。您需要将这两个软件包的版本升级到最新才能使用它们。
System.ServiceModel.Primitives 8.0.0 和 System.ServiceModel.Http 8.0.0 存在于 Nuget 上。您可以卸载您安装的版本并重新安装新版本再试一次。