我有 .Net Core 2.1 项目,其代码如下:
Tools.Serialize(new Dictionary<string, object> { { "1", null } });
方法Tools.Serialize
放在另一个写在 .Net Framework 4.5.1 (第一个引用)上的项目中。此方法如下所示:
public static string Serialize(Dictionary<string, object> d) { var serializer = new JavaScriptSerializer(); var result = serializer.Serialize(d); return result; }
JavaScriptSerializer
放在 .Net Framework的 System.Web.Extensions 程序集中。
因此,我在 .Net Core 项目中(通过 PackageReference )添加了对System.Web.Extensions的引用。但是在运行代码时,我总是会遇到以下异常:
System.BadImageFormatException:'无法加载文件或程序集'System.Web.Extensions,版本= 4.0.0.0,区域性=中性,PublicKeyToken = 31bf3856ad364e35'。参考程序集不应该加载执行。它们只能在“仅反射”加载器上下文中加载。 (来自HRESULT的异常:0x80131058)'
我在论坛上阅读了类似的问题,但没有找到适合我的情况的解决方案。有人可以给个建议吗?