禁用 .NET StreamReader 调用的文件缓存

问题描述

我有一个 WCF 服务。一种方法是简单地读取文本文件并返回其内容

    Public Function GetiniFileContents() As WM_Monitor.retString Implements IWM_Monitor_WCF.GetiniFileContents
    Dim ret As New WM_Monitor.retString()
    Try
        Using sr As New StreamReader(ConfigurationManager.AppSettings("IniFilename").ToString())
            ret.ReturnString = sr.ReadToEnd()
        End Using
        ret.Success = True
        ret.ErrorMessage = String.Empty
    Catch ex As Exception
        ret.ReturnString = String.Empty
        ret.Success = False
        ret.ErrorMessage = ex.Message
    End Try

    Return ret
End Function

但是,如果文件被更新并保存,服务似乎不会注意到更改并返回原始内容。除非重新启动服务,否则不会返回文件的新内容,即使您可以在记事本中打开文件并立即显示更新的内容。我该怎么做才能强制关闭缓存并直接加载保存在磁盘上的文件

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)