一般来说是很难解决多人同时读写一个文件的,
更不用说XML这种强结构化文档。最简单的办法就是,一次只能让一个人来改。
另外就是将一个XML文件拆分成多个,各人改各人的。

解决方案 »

  1.   

    我的应用是在web上的,所以会有很多人进行同时的读写。
    大伙有没有什么好的注意啊?
      

  2.   

    XML是以文本流存在的,它不能想数据库那样进行部分更改。
    我想利用Application的Lock()函数试试,没测试不一定行。
    Application.Lock();
    xmlDoc.Load(...);
    Application["XmlDoc"]=xmlDoc.InnerXml;
    .............
    xmlDoc.Save(...);
    Application["XmlDoc"]=xmlDoc.InnerXml;
    Application.UnLock();
      

  3.   

    可以利用.net中的锁定机制,.net中提供了三种锁定方式,可以作用在变量和方法等上面,你只要用锁机制锁定读写Xml的方法就行了。.net帮助文档中有相关的详细介绍。
      

  4.   

    请问可不可以这样:
    1.服务器取得xml文件流
    2.各操作员取得副本
    3.提交各自修改信息给服务器
    4.服务器重新根据修改信息生成新的xml
    (其中仍然将xml全部载入流)
      

  5.   

    这样的话还是觉得得用数据库. 一帮情况下数据库和XML数据是可以交互的.
      

  6.   


    如果能在xml基础上实现数据库的并发访问机制就好了。
    这样,就不是二维关系数据库了,可以是三维甚至四维的了。
    不过,这个很难。空想,hehe
      

  7.   

    可以利用.net中的锁定机制,.net中提供了三种锁定方式,可以作用在变量和方法等上面,你只要用锁机制锁定读写Xml的方法就行了。.net帮助文档中有相关的详细介绍。
      

  8.   

    .net中提供了三种锁定方式,可以作用在变量和方法等上面.
    请问是哪三种锁定方式?它们的名称是什么?这样我也好去.net帮助文档里找找看。谢谢