Conexiones concurrentes a un archivo XML

08/11/2005 - 01:50 por Zenkius | Informe spam
Hola amigos!

Tengo un problema con un sitio web que estoy desarrollando. Pues resulta que
cuando se carga la página principal del sitio guardo datos del cliente que
hace la petición en un archivo XML, pero el problema que tengo es cuando
varios usuarios abren al mismo tiempo el sitio a algunos le devuelve una
página con el error: "The process cannot access the file
"C:\inetpub\wwwroot\file.xml" because it is being used by another process." y
esto debe ser pq el proceso de IIS está guardando los datos de uno de los
usuarios en el XML y tiene el archivo bloqueado con acceso exclusivo.

Lo que quiero saber es si existe alguna forma de que se puedan guardar datos
en el archivo xml de forma simultanea para que no devuelva este error?

Cualquier ayuda les agradeceré mucho, pq he cambiado el código C# varias
veces, buscando otras vías, pero no encuentro manera alguna de que me
funcione como quiero.

Saludos y muchos Zenkius!!!
 

Leer las respuestas

#1 JuanCri
08/11/2005 - 12:54 | Informe spam
Lo único que se me ocurre es que pongas un lock dentro del método que
está guardando el archivo. Por ejemplo:

public void GuardarDatos (string dato)
{
lock (this)
{
// abrir xml
// ...
// guardar
// ...
// cerrar xml
// ...
}
}


Atte,
Juan C. Olivares
www.juancri.com

Preguntas similares