File.ReadAllText 和母版页行为

发布于 2024-10-08 04:14:59 字数 177 浏览 1 评论 0原文

如果我在母版页中使用

File.ReadAllText 

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

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

感谢您抽出时间

if I use in a Master Page

File.ReadAllText 

to load some text from a Text file ,as string in a Literal.

When I will load the Content Page depending on my Master Page the code will open and read the Text file all the times (for every content page request) OR the Text File will be CACHED in the Master Page only once?

Thanks for your time

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

葬花如无物 2024-10-15 04:14:59

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

例如,以下内容:

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

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

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

每次加载此母版页时都会执行该内容。

It will not be cached. Master pages even compiled don't execute the code you've written in them at compilation time.

For example the following thing:

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

will be compiled to something essentially the same as the following:

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

which will be executed each time this master page is loaded.

情何以堪。 2024-10-15 04:14:59

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

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

I think your application will read the file multiple times. But the OS will most likely cache the file in RAM, so it should be fast when reading it often.

Alternatively just put it in a cache in your application. But remember "A cache without policy is a memory leak", so you might need a procedure to remove old entries from the cache.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文