分類:[.NET 全般]
お世話になっております。
VisualStudio2008 + SP1
Silverlight2 RTW(正式版)
でWPFサービス内で、system.IO.Fileクラスを使用したロギングを行っているのですが、
日付をまたいだときに、プロセスもしくはオブジェクトが解放されずエラーになってしまいます。
-----ソース
if (!File.Exists("C:\\Inetpub\\wwwroot\\Applications\\logs\\App_" + DateTime.Now.ToString("yyyyMMdd") + ".log"))
{
File.Create("C:\\Inetpub\\wwwroot\\Application\\logs\\App_" + DateTime.Now.ToString("yyyyMMdd") + ".log");
}
-----
上記ソースはApp_年月日.logというフォーマットで名前を付けております。
おそらくSilverlightのみならず、ASP.Netでも発生しうることですが、
解決方法が全くつかめません。
そもそもsystem.IO.Fileクラスに解放/破棄するようなプロパティが見つかりませんでした。
何がずっと保持しているか最初は分からなかったのでIISのプロセスを切ったところ、
正常にログを開くことが出来たのでIISではないかと考えております。
どのようにすればこのFile.Createで作成したファイルを解放してくれるのでしょうか。
再現性も100%ではないので苦慮しております。
|