Веб-приложение использует xml файл для хранения некоторых настроек. Первый раз файл открывется и записывается нормально. При повторной записи в данный файл срабатывает исключение "File is being used by another process". Файл блокируется процессом w3wp.exe. Для записи в файл используется XmlWriter. В конце записи вызываются методы
writer.Flush();
и
writer.Close();
Как сделать, чтобы блокировка не возникала?
Посмотри, не падает ли код до момента закрытия, потому что по виду как раз незакрытый файл стрим.
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Здравствуйте, IDeal, Вы писали:
ID>Веб-приложение использует xml файл для хранения некоторых настроек. Первый раз файл открывется и записывается нормально. При повторной записи в данный файл срабатывает исключение "File is being used by another process". Файл блокируется процессом w3wp.exe. Для записи в файл используется XmlWriter. В конце записи вызываются методы
ID> writer.Flush();
и writer.Close();
Как сделать, чтобы блокировка не возникала?
надо смотреть где у тебя writer.Close(); вызывается, надо ли бо в finally его дергать, либо using юзать =))
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Здравствуйте, IDeal, Вы писали:
ID>Веб-приложение использует xml файл для хранения некоторых настроек. Первый раз файл открывется и записывается нормально. При повторной записи в данный файл срабатывает исключение "File is being used by another process". Файл блокируется процессом w3wp.exe. Для записи в файл используется XmlWriter. В конце записи вызываются методы
ID> writer.Flush();
и writer.Close();
Как сделать, чтобы блокировка не возникала?
открой writer от потока а не по имени файла
writer = new StreamWriter(myStream);
а поток закрывай ручками — иногда помогает.