Ich würde viel lieber tun, ohne eine Ausnahme in LoadXml()
zu fangen und diese Ergebnisse als Teil meiner Logik verwenden. Irgendwelche Ideen für eine Lösung, die nicht manuell das XML selbst analysieren? Ich denke VB hat einen Rückgabewert von false für diese Funktion, anstatt eine XmlException zu werfen. Xml-Eingabe wird vom Benutzer bereitgestellt. Vielen Dank!Wie nach gültigem XML in String-Eingabe vor dem Aufruf .LoadXml() zu überprüfen
if (!loaded)
{
this.m_xTableStructure = new XmlDocument();
try
{
this.m_xTableStructure.LoadXml(input);
loaded = true;
}
catch
{
loaded = false;
}
}
Dies geschieht beim Laden der Seite in einer Umgebung mit sehr hoher Last, der Overhead von der Ausnahme ist klein, aber signifikant genug, dass es vermieden werden muss. –
Haben Sie die Messungen gemacht, um dies zu beweisen? Denken Sie auch daran, dass der try-catch nur dann eine (relativ kleine) Leistungseinbuße auferlegt, wenn die Ausnahme tatsächlich ausgelöst wird. –
Woher kommt das XML? Wenn Sie die meiste Zeit mit gültigem XML rechnen, lohnt es sich nicht, bei jedem Aufruf zu überprüfen. Behandeln Sie die Ausnahme und gehen Sie weiter. –