XMLファイルからSQLデータベースに情報をインポートしています。インポートは正常に機能していますが、一部のXMLファイルにエラーがあるため、コードが失敗します。私は例外をキャッチし、エラーフォルダにファイルを移動しようとしましたが、以前にファイルから読み込んでいたときに、そのファイルが別のプロセスで使用中であるというエラーが表示されます。私は検索しましたが、まだこれを治す方法はありません。ドキュメントを保存しようとしましたが、移動しようとするとまだ使用中です。以下は、参照用にファイルを移動しようとするコードのサンプルです。これをどのように治すべきかについての提案はすばらしく、事前情報に感謝します。C#でXMLDocumentを閉じるにはどうすればいいですか
XmlDocument doc = new XmlDocument();
try
{
doc.Load(st);
}
catch(Exception ex)
{
doc.Save(st);
if (File.Exists(st))
File.Move(st, st + "\\Error");
}
を試してみてください。 XMLファイルが現在どこに存在し、どこに移動しようとしていますか? –
XMLDocumentを開いたままにしてもよろしいですか?それだけでそれをロードしているので、決してそれを行うべきではありません。 –
'XmlDocument'はファイルコンテンツを読み込むことができませんが、ファイルはまだ使用中です。ファイルを移動してコピーし、後でクリーンアップを実行しないでください。 –