私は、私たちのプロジェクトのWebページのいずれかで、次のコードを持っている:XMLExceptionを処理できないようですか?
XmlDocument xDoc = new XmlDocument();
xDoc.Load(File.FullName);
//work through each print batch in this queue file
try
{
XmlNodeList nodeList = xDoc.SelectNodes("Reports/PrintBatch");
foreach (XmlNode printBatch in nodeList)//xDoc.SelectNodes("Reports/PrintBatch"))
{
PrintBatch batch = new PrintBatch();
batch.LoadBatch(printBatch, File.Extension);
this.AddBatch(batch);
}
}
catch (XmlException e)
{
//this report had an error loading!
Console.WriteLine(e.Message);
}
それは、基本的に処理する準備ができて、オブジェクトとしてXMLバッチファイルをロードそれをかかります。
XMLファイルの1つにヌル文字(XMLでは無効)が含まれていることが最近判明するまで、うまくいきました。
それがこの「dudd」ファイルを処理しようとすると、我々は次の例外を取得:これまで
alt text http://blog.ianmellor.co.uk/images/xml_err.jpg
[OK]を..しかし、私たちは、その後、「継続」または「ステップ・オーバー」しようとすると、私はそれがcatchブロックに流れ込むことを期待しています。 しかし、そうではありません。私は間違って何をやっている
alt text http://blog.ianmellor.co.uk/images/xml_err2.jpg
:我々は単に死の赤い画面を取得しますか?
同様の成功でSystemException、Exception、System.Xml.XmlPath.XPathExceptionをキャッチしようとしました。 – Sk93
奇妙なことから、catch(XmlException e){}をキャッチ{}するように変更するとどうなりますか? – Razzie
Razzie:まったく同じ。赤い画面が死にます。 – Sk93