У меня есть функция, в которой я передаю строку в виде параметров с именем filterXML, которая содержит «&» в одном из свойств.
Я знаю, что XML не распознает его, и это вызовет у меня ошибку. Вот мой код:
public XmlDocument TestXMLDoc(string filterXml)
{
XmlDocument doc = new XmlDocument();
XmlNode root = doc.CreateElement("ResponseItems");
// put that root into our document (which is an empty placeholder now)
doc.AppendChild(root);
try
{
XmlDocument docFilter = new XmlDocument();
docFilter.PreserveWhitespace = true;
if (string.IsNullOrEmpty(filterXml) == false)
docFilter.LoadXml(filterXml); //ERROR THROWN HERE!!!
Что я должен изменить в своем коде, чтобы редактировать или анализировать filterXml? Мой filterXml выглядит так:
<Testing>
<Test>CITY & COUNTY</Test>
</Testing>
Я меняю строковое значение с & на &. Вот мой код для этого:
string editXml = filterXml;
if (editXml.Contains("&"))
{
editXml.Replace('&', '&');
}
Но это дает мне ошибку внутри утверждения if: Слишком много литералов.