2017-07-17 64 views
0

在此先感谢您的帮助。XAdES XML签名 - 在对象标签内添加引用

我想使用XAdES签署一个XML文件,并在c#中使用X509证书,我可以在XML文件中添加对id的引用。但是,当我尝试引用外部文件时,出现异常“无法解析Uri”

我使用Google搜索,并且找不到任何正面结果来解决我的错误。共享一段我试过的代码

// Create a reference to be signed. 
      Reference reference = new Reference(); 

      reference.Uri = "test.xml"; 
      reference.Id = "Id-Manifest"; 

      // Add the Reference object to the Signature object. 
      XMLSignature.SignedInfo.AddReference(reference); 

任何帮助都非常感谢!

回答

0

分享适合我的解决方案!

我不得不的文件传递的存储器流而初始化参考对象,如下和“reference.Uri”值应相同文件名而初始化参考对象传递

// Create a reference to be signed. 
      Reference reference = new Reference(System.IO.File.Open(xbrlPath, System.IO.FileMode.Open)); 

      reference.Uri = "test.xml"; 
      reference.Id = "Id-Manifest"; 

      // Add the Reference object to the Signature object. 
      XMLSignature.SignedInfo.AddReference(reference);