Tengo un TextBox que finalmente se guarda en un nodo xml. Estoy utilizando el SecurityElement.Escape (string2Escape) para escapar de los caracteres no válidos antes de guardar el xml.SecurityElement.IsValidText devuelve verdadero en "&" ... ¿por qué?
Problema: Intenté usar IsValidText para probar si necesito ejecutar el método de escape, pero devuelve '' 'y' & 'como válido pero luego cuando guardas el xml el sistema barfs porque son, de hecho, , no es válido. Parece que solo devuelve falso en '<' o '>'.
Solución simple, quite el cheque, pero mi pregunta es ¿por qué sería este el caso?
La siguiente es mi código en su defecto:
private string EscapeXML(string nodeText)
{
if (!SecurityElement.IsValidText(nodeText))
{
return SecurityElement.Escape(nodeText);
}
return nodeText;
}