ドキュメントを読むと、このコードはスレッドセーフな方法でファイルにログを書き込むと思いました。
using (TextWriter syncTextWriter = TextWriter.Synchronized(new StreamWriter(Server.MapPath(String.Format("~/App_Data/PaypalIPN/IPNlog_{0:yyyyMM}.txt", DateTime.Now)), true)))
{
syncTextWriter.WriteLine(line);
syncTextWriter.Close();
}
私は交通量の多いサイトを持っていませんが、時々2人が同時にペイパル支払いを行います。これはIPN支払いログです。紹介したにもかかわらずTextWriter.Synchronized
、私はまだ奇妙な例外を受け取っています:
System.IO.IOException: The process cannot access the file ...
...because it is being used by another process.
どこが間違っているのですか?