繁体   English   中英

在Webform模板中初始化变量,然后在转发器中引用它

[英]Initialize a variable in the Webform template and refer it inside a repeater

我试图将Eval值分配给变量,并尝试在转发器中使用它。 这是我要做的简短示例:

 <ItemTemplate>
  <% var test= Eval("year") %>
 <asp:Repeater DataSource='testlist'>
  <ItemTemplate>
  <a class="testclass" href='/testlink/<%= test%>/'>Test this</a>  
  </ItemTemplate>
</asp:Repeater>
</ItemTemplate>

我最终收到此错误

 CS0103: The name 'test' does not exist in the current context

我认为我的语法是错误的。 我尝试过在线查找此选项,但是大多数都在后面的代码中建议了一个变量。 我正在使用Sitefinity Webform模板,因此想避免后面的代码。 有什么办法可以在aspx页面本身上做一些事情,而不是在后面的代码做些什么? 我忘记提及的一件事是测试列表没有年份属性。 Year属性存在于转发器之外。 因此,我想将其分配给变量并使用。

如下使用

 <ItemTemplate>
 <asp:Repeater DataSource='testlist'>
  <a href='/testlink/<%#DataBinder.Eval(Container.DataItem, "test") %>'>Test this</a>  
</asp:Repeater>
</ItemTemplate>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM