0

如果我在母版页中使用

File.ReadAllText 

从文本文件中加载一些文本,作为文字中的字符串。

当我将根据我的母版页加载内容页时,代码将始终打开并读取文本文件(对于每个内容页请求)或者文本文件将仅在母版页中缓存一次?

谢谢你的时间

4

2 回答 2

1

它不会被缓存。甚至已编译的母版页也不会在编译时执行您在其中编写的代码。

例如下面的事情:

<div><%= File.ReadAllText( someFile ) %></div>

将被编译为与以下内容基本相同的内容:

builder.Append("<div>").Append( File.ReadAllText( someFile ) ).Append( "</div>" )

每次加载此母版页时都会执行该操作。

于 2010-12-16T20:02:34.803 回答
1

我认为您的应用程序将多次读取该文件。但是操作系统很可能会将文件缓存在 RAM 中,因此在经常读取时应该很快。

或者,只需将其放入应用程序的缓存中。但请记住“没有策略的缓存是内存泄漏”,因此您可能需要一个过程来从缓存中删除旧条目。

于 2010-12-16T20:04:52.340 回答