如果我在母版页中使用
File.ReadAllText
从文本文件中加载一些文本,作为文字中的字符串。
当我将根据我的母版页加载内容页时,代码将始终打开并读取文本文件(对于每个内容页请求)或者文本文件将仅在母版页中缓存一次?
谢谢你的时间
如果我在母版页中使用
File.ReadAllText
从文本文件中加载一些文本,作为文字中的字符串。
当我将根据我的母版页加载内容页时,代码将始终打开并读取文本文件(对于每个内容页请求)或者文本文件将仅在母版页中缓存一次?
谢谢你的时间
它不会被缓存。甚至已编译的母版页也不会在编译时执行您在其中编写的代码。
例如下面的事情:
<div><%= File.ReadAllText( someFile ) %></div>
将被编译为与以下内容基本相同的内容:
builder.Append("<div>").Append( File.ReadAllText( someFile ) ).Append( "</div>" )
每次加载此母版页时都会执行该操作。
我认为您的应用程序将多次读取该文件。但是操作系统很可能会将文件缓存在 RAM 中,因此在经常读取时应该很快。
或者,只需将其放入应用程序的缓存中。但请记住“没有策略的缓存是内存泄漏”,因此您可能需要一个过程来从缓存中删除旧条目。