Preferiría hacer esto sin capturar una excepción en LoadXml()
y usar estos resultados como parte de mi lógica. ¿Alguna idea para una solución que no implique analizar manualmente el xml? Creo que VB tiene un valor de retorno de falso para esta función en lugar de arrojar una XmlException. La entrada Xml es proporcionada por el usuario. ¡Muchas gracias!Cómo comprobar si hay xml válido en la entrada de cadena antes de llamar a .LoadXml()
if (!loaded)
{
this.m_xTableStructure = new XmlDocument();
try
{
this.m_xTableStructure.LoadXml(input);
loaded = true;
}
catch
{
loaded = false;
}
}
Esto ocurre en la carga de la página en un entorno de carga muy alta, la sobrecarga de la excepción es pequeña, pero lo suficientemente significativa como para evitarla. –
¿Has hecho las mediciones para probar esto? Además, recuerde que el try-catch solo impone su penalización de rendimiento (relativamente pequeña) si realmente se lanza la excepción. –
¿De dónde viene el XML? Si está esperando XML válido la mayor parte del tiempo, no vale la pena sobrecargarlo en cada llamada. Solo maneje la excepción y continúe. –