我们最近运行的 VeraCode 指出了以下方法:
public XmlElement RunProcedureXmlElement(string Procedure, List<SqlParameter> Parameters)
{
DataSet ds = RunProcedureDataSet(Procedure, Parameters);
XmlDocument xmlDoc = new XmlDocument();
StringBuilder strXML = new StringBuilder();
foreach (DataTable dt in ds.Tables)
{
foreach (DataRow dr in dt.Rows)
{
strXML.Append(dr[0]); // Do I still need .ToString()???
}
}
if (strXML.Length == 0) strXML.Append("<root total=\"0\"></root>");
try
{
xmlDoc.LoadXml(strXML.ToString());
}
catch (XmlException e)
{
}
return xmlDoc.DocumentElement;
}
修复该方法以便 VeraCode 停止提示的好的解决方案是什么?
谢谢
最佳答案
我在 Veracode 上也有同样的问题,下面解决了它。
声明 XmlReader
后:
XmlDocument xmlDoc = new XmlDocument();
添加行:
xmlDoc.XmlResolver = null;
关于c# - 修复 "Improper Restriction of xml external entity reference"的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21938048/