问题描述
|
我试图理解为什么在下面的示例中变量
myUrl
不在上下文中。解决这种情况的最佳方法是什么?有其他选择吗?代码是ASP.NET页中的C#。
<% string myUrl = \"http://www.website.com\"; %>
<ul class=\"footerLinks\">
<li><a href=\"<%= myUrl %>/index.html\">Home</a></li>
</ul>
解决方法
这是因为在脚本组件之前渲染了“ 2”。如果您在后面的代码(
Page_Load
或Init
事件)中设置了ѭ0then,那么它应该会按预期进入页面。显然,也要删除标记中的变量声明。
, 首先,应在类级别将字符串变量设置为public。
public String myUrl
然后您需要在Page_PreRenderComplete
事件中呼叫DataBind() method
:
protected void Page_PreRenderComplete(object sender,EventArgs e)
{
DataBind();
}
因为ѭ10是在渲染时求值的。