[英]How can I use strongly-typed resources in server tags?
我试图将一些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的吗? 使用<%= %>
也不起作用(大概是因为它直接写入响应流,但是我需要设置它的属性)。
EDit :我需要以编程方式在成千上万个文件中进行此操作,因此将其移动到代码隐藏文件中不是一种选择:(
给超链接指定一个ID,然后从后面的代码中设置text属性。
额外的优势:您可以将逻辑从演示中分离出来,并填写各自的值
我能找到的唯一解决方案是将资源放在打开/关闭标签之间。 这仅适用于某些控件,因此将需要更改其他控件。
<asp:HyperLink runat="server" NavigateUrl="#"><% Translations.Blah1.Blah2 %></asp:HyperLink>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.