无法加载文件或程序集“System.Security.Cryptography.Xml”

问题描述 投票:0回答:2

我在 .net standard 2.0.3 中有一个类库项目,我使用

System.Security.Cryptography.Xml
使用 privateRSAkey 签署 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”或其依赖项之一。系统找不到指定的文件。'

NuGets

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

c# .net-standard-2.0 system.security
2个回答
4
投票

问题真的很简单而且愚蠢..! 我只需在我的主项目中添加相同的

System.Security.Cryptography.Xml
Nuget 即可调用库。


0
投票

对我来说,只有在更改 IIS 上的应用程序组中的设置后才有效。 就我而言,该值为“假”,我更改为“真”。您可以在高级设置中访问此页面。advanced settings

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.