c# - 如何在服务器标签中使用强类型资源?

标签 c# .net asp.net webforms

我正在尝试更改一些 ASP.NET 代码以使用我们在 C# 代码中使用的强类型转换。目前代码如下所示:

<asp:HyperLink runat="server" Text='<%$ Resources:Blah1,Blah2 %>' />

我希望它看起来像这样:

<asp:HyperLink runat="server" Text='<% Translations.Blah1.Blah2 %>' NavigateUrl="#" />

原因是我们在第一种情况下使用了自定义提供程序,它不能很好地与 aspnet_compiler 配合使用,我们正试图消除由无法编译的 aspx/ascx 文件引起的问题。

但是,如果我更改代码(如上所示),则会出现此错误:

Server tags cannot contain <% ... %> constructs.

有没有什么方法可以在不使用 <%# Databind %> 标签的情况下实现这一点,然后确保调用 Databind?使用 <%= %>也不起作用(大概是因为它直接写入响应流,但我需要让它设置属性)。

编辑:我需要以编程方式跨越数千个文件,因此将它移动到代码隐藏文件不是一个选项:(

最佳答案

为超链接提供一个 ID,并从代码隐藏中设置文本属性。

额外优势:您将逻辑与表示分离并填充它们各自的值

关于c# - 如何在服务器标签中使用强类型资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6994326/

相关文章:

.net - 在 .NET 中优雅地处理内存不足异常(或完全避免它)

c# - 使用 SMTP 时出现 "An attempt was made to access a socket in a way forbidden by its access permissions"

javascript - 上传前验证文件扩展名

C#。如何将高斯钟形曲线应用于我的峰值?

c# - ASP.NET Core 依赖注入(inject),带参数注入(inject)

c# - 我应该在哪里放置数据行 List<T> 的关联方法?

c++ - DLL 不适用于 x64 系统

c# - 如何在 C# 中全局定义常量(如 DEBUG)

c# - 如何使用 LINQ to Entities 更新现有对象的属性?

c# - Microsoft 图表控件 - 每当我使用财务公式时,大红色 X(坏)