我怎麼關閉這個文件,被稱爲是這樣的:接近VAR XDocument.Load方法/辦法
var xmlDoc = XDocument.Load(new XmlTextReader(Server.MapPath("Nc.xml")));
感謝
我怎麼關閉這個文件,被稱爲是這樣的:接近VAR XDocument.Load方法/辦法
var xmlDoc = XDocument.Load(new XmlTextReader(Server.MapPath("Nc.xml")));
感謝
XmlTextReader實現IDisposable。一般情況下,只要不再需要資源以允許系統關閉打開的句柄等,就應該調用IDisposable.Dispose()。
IDisposable的最佳使用模式是使用using
語法,它將在隱try..finally
包裝自動調用IDisposable.Dispose():
using (var reader = new XmlTextReader(Server.MapPath("Nc.xml")))
{
var xdoc = XDocument.Load(reader);
{ .. do xdoc work here .. }
} // reader disposed here
,或者如果你想保持周圍XDOC很長一段時間的其他工作,但要儘快關閉該文件,做這種方式:
XDocument xdoc = null;
using (var reader = new XmlTextReader(Server.MapPath("Nc.xml")))
{
xdoc = XDocument.Load(reader);
} // reader disposed here
{ .. do xdoc work here .. }
一旦讀者完成後,它會關閉它已經自動讀取。
否則掛參考出去GC通過
xmlDoc = null;
將推倒任何內部打開的項目。
謝謝f或評論HTH。 – Fm3 2012-01-12 23:47:17
謝謝,這是一個很好的做法! – Fm3 2012-01-12 23:46:29