1

我正在尝试将 ASP.NET Web 应用程序转换为使用资源文件。我以前没有使用过资源文件,所以我只是在玩弄它们,想知道这是否可能。

当没有找到结果时,我有一条从搜索返回的消息,提示用户返回主页。很多这些页面都有方法来确定将用户发送到的正确页面,因此有许多部分带有类似于此的标记:

抱歉,我们找不到符合您搜索条件的项目。

请调整您的搜索条件或<a href="<%= SomeMethodToDetermineUri() %>">返回 (SomePage) </a>

所以基本上,某种类型的消息,后跟一个链接或链接列表。获取消息部分工作正常,这是生成链接的服务器端代码,这就是问题所在。

将其放入资源文件的最佳方法是什么?它能够很好地识别 html 链接部分,但服务器端代码以纯文本形式插入。

是把它分成2个资源的唯一方法吗?(看起来很乱)

<%= Resources.Master.NoSearchResultsFound %>
<a href="<%= SomeMethodToDetermineUri() %>"> 
   <%= Resources.Master.NoSearchResultsFoundReturnLinkText %>
</a>.

或者有没有办法让页面评估服务器代码?

4

3 回答 3

1

如果您的网站上有类似的功能,我建议您使用用户控件或母版页来处理您尝试执行的操作。我相信资源更适合与项目之外的文件一起使用。

于 2010-03-30T19:14:09.940 回答
1

您不想将任何类型的代码放入资源文件中。你的解决方案是正确的,即使你觉得它很乱。

您唯一能做的就是将其封装在用户控件中。用户控件会去获取资源,从而隐藏页面的混乱。

于 2010-03-30T19:38:57.633 回答
1

呸,我忘了我的老朋友String.Format

<%= String.Format(Resources.Master.NoSearchResultsFound, SomeMethodToDetermineUri() %>

工作得很好。

那么资源文件中的值就是

抱歉,我们找不到符合您搜索条件的项目。

请调整您的搜索条件或<a href="{0}">return to (SomePage)</a>

于 2010-03-30T19:39:04.233 回答