首页 > 解决方案 > 无法加载文件或程序集“System.Security.Cryptography.Xml”

问题描述

我在 .net 标准 2.0.3 中有类库项目,我在其中使用System.Security.Cryptography.XmlprivateRSAkey 签署 xml 文档。

var sign = GetXmlSign(doc, rsa);

private static XmlElement GetXmlSign(XmlDocument xml, AsymmetricAlgorithm key)
{
    var signedXml = new SignedXml(xml) {SigningKey = key};
    var refer = new Reference {Uri = ""};
    reference.AddTransform(new XmlDsigEnvelopedSignatureTransform());
    signedXml.AddReference(refer);
    signedXml.ComputeSignature();
    return signedXml.GetXml();
}

现在,当我打电话时,GetXmlSign(doc, rsa);我得到了下面的异常。

System.IO.FileNotFoundException:'无法加载文件或程序集'System.Security.Cryptography.Xml,Version=4.0.1.0,Culture=neutral,PublicKeyToken=cc7b13ffcd2ddd51'或其依赖项之一。该系统找不到指定的文件。'

NuGet

在此处输入图像描述

注意:没有版本=4.0.1.0 的 Nuget "System.Security.Cryptography.Xml"

标签: c#.net-standard-2.0system.security

解决方案


这个问题真的很简单和愚蠢..!我只需要System.Security.Cryptography.Xml在我调用库的主项目中添加相同的 Nuget。


推荐阅读