mvc 5读取并显示文本文件内容

时间:2015-10-22 18:44:20

标签: asp.net asp.net-mvc-5 text-files temporary-asp.net-files

我正在尝试阅读文本文件并将其显示在plage上。这就是我做的。但是我收到了错误

  

该进程无法访问该文件   ' d:\ wwwroot的\ TestProject \日志\ TestLog.log'因为它正被使用   另一个过程。

控制器代码

 Array LogFileData = null;
 var logFileNameWithPath = Server.MapPath("D:\wwwroot\TestProject\Logs\TestLog.log");

 if (System.IO.File.Exists(logFileNameWithPath))
 {
    LogFileData = System.IO.File.ReadAllLines(logFileNameWithPath);
 }
 ViewBag.logFileContent = LogFileData;

查看代码

    @if (ViewBag.logFileContent != null) 
    {
      foreach (string dataLine in ViewBag.logFileContent) 
      {
        @dataLine
        <br /> 
     } 
   }

日志文件由服务创建和使用。我的代码在我停止服务时有效。但我不是在写服务的同时专门写文件。事实上,我正试图在服务没有写入时阅读。关于如何解决这个问题的任何建议?感谢。

1 个答案:

答案 0 :(得分:2)

通常,在尝试读取文件时需要指定“访问模式”。请看一下here。尝试将文件打开到具有适当访问权限的FileStream中。

我会尽可能发布一些代码。