大家好!
我正在开发一个Core类库项目,但我必须使用.Net框架DLL中一个名为System.Security的类,这在.Net中是不可用的。(该类是System.Security.Cryptography.Xml命名空间中的SignedXml.cs。-是的,我知道命名空间和类也存在于核心中,但是SignedXml不一样,有一些私有字段丢失了(m_refProcessed,m_refLevelCache等)。
我必须使用旧的类。
在我的核心项目中导入System.Security并扩展SignedXml类有什么解决方案吗?或者只导入SignedXml类?
谢谢!
发布于 2020-03-06 22:48:19
我试图复制您想要做的事情,但显然失败了,您可以做的是向项目中添加一个新的.net框架解决方案,并在需要时调用它,这样您就可以使用您需要的库了。
发布于 2020-03-06 23:21:54
如果你查看文档,微软没有描述.NET核心和.NET框架版本之间的任何差异。
你永远不应该操作私有字段,这对代码的可维护性是危险的。
我知道你说的是一个“老类”,当你谈到安全类时,最好跟上最新的版本。也许这种差异来自于代码中已更正的缺陷。因此,保持最新版本是个好主意。
无论如何,.NET核心和.NET框架并不是为了兼容而设计的。理论上,当他们发布.NET Framework5.0的时候应该是可能的。
https://stackoverflow.com/questions/60566347
复制相似问题