好的,我有一个xml文档,它通过c#函数返回并通过XSLT输出。在XML文档中,有一个加密的字符串,我需要在输出之前解密。
基本上,我需要通过解密函数运行“encryptedstring”才能获得真正的价值。
XML结构:
<root>
<order encryptedstring="676696969hjhig">
</root>
输出功能:
XmlDocument xmlOrders = Data_Functions.Get_All_Orders();
xmlOutput.DocumentContent = xmlOrders.OuterXml;
我假设我需要遍历XML文档,获取每个“encryptedstring”的值,通过解密函数运行该值并将其重新注入xml文档但不确定最佳方式这一点。
解密必须在c#中的代码隐藏中完成,方法是将字符串传递给decryptString();
答案 0 :(得分:0)
在@momar的问题建议的指导下,这可以通过以下方式解决......
XmlNodeList aNodes = xmlOrders.SelectNodes("//root/order");
foreach (XmlNode aNode in aNodes)
{
XmlAttribute ccAttribute = aNode.Attributes["encryptedstring"];
string attValue= ccAttribute.Value;
string encKey = ConfigurationManager.AppSettings["EncryptionKey"];
string decrypt = Crypto.DecryptStringAES(attValue, encKey);
ccAttribute.Value = deencrypt;
}
xmlOutput.DocumentContent = xmlOrders.OuterXml;