我有.txt
个文件,每隔5-10秒就被软件中的数据覆盖,然后我有一个wpf应用程序,每秒读取并显示这些数据。以下是我的问题:
目前,文本文件存储在服务器上,并且有许多用户运行此应用程序来查看此“实时”数据。 但是,由于:
文件会定期“锁定”并导致所有应用程序锁定(甚至无法在任务管理器中关闭)。
因此我决定将数据从文本文件复制到SQL,但是根据我的理解,无法覆盖SQL表中的数据。必须删除表并创建一个新表。这导致10秒以上的延迟更新数据,这是不可能发生的。
我的问题是,有一种方法可以从某个地方快速读取和写入数据,无论是数据库等等。我不知道还能在哪里转。
我的约束:
我坚持使用Server 2008,必须使用这些文本文件,我必须在我的wpf应用程序上显示它。有没有人对可以处理这种类型的I / O的方法有任何建议?
非常感谢所有帮助,我完全失去了..
答案 0 :(得分:0)
您似乎没有丰富的数据库技术经验,所以让我提出一些不同的建议:
string text = System.IO.File.ReadAllText(path);
然后,也许您可以使用文本并使用它执行所需操作,将其转储到队列中以便在应用程序的另一部分中执行操作。
ReadAllText有一些抛出的异常:
https://msdn.microsoft.com/en-us/library/ms143368(v=vs.110).aspx
我正在寻找UnauthorizedAccessException,正如你所说,当多个用户访问它时,该文件似乎已锁定。