Я использую StreamWriter для записи файла журнала.Asp.net MVC3 C#, ошибка StreamWriter
И это метод написания журнала,
public void Write(string fileNamePrefix, string msg){
GenerateFileName(fileNamePrefix);
string logTime = "> "+DateTime.Now.ToShortDateString().ToString() + " " + DateTime.Now.ToLongTimeString().ToString()+"\r\n";
using (StreamWriter sw = new StreamWriter(fileName, true))
{
sw.WriteLine(logTime + msg);
sw.Flush();
sw.Close();
sw.Dispose();
}
}
При использовании этого метода для записи журнала, я получил сообщение об ошибке, что сказать " Процесс не может получить доступ к файлу«C: \ Users \ знак \ documents \ visual studio 2010 \ Projects \ eee \ eee.WebUI \ log \ Order_20120613 ', потому что он используется другим процессом. "
Не все время появляется сообщение об ошибке, когда я запускаю много процессов на то же время и процессы используют этот метод для записи журнала, затем я получаю это сообщение об ошибке.
Кто-нибудь знает, что я делаю неправильно? как избежать этой ошибки?
и это правильный путь для записи журнала? Как вы обычно записываете журнал процессов?
спасибо.
Откуда взялось fileName? Предполагается, что это 'var fileName = GenerateFileName (fileNamePrefix);'? – alexn
yes right, GenerateFileName() метод сгенерировать имя файла, например, Order_20120613 –
На какой строке метода вы получаете сообщение об ошибке? В ('new StreamWriter (filename)'? – hometoast