如何在<asp>标记元素内的.aspx文件中访问声明的变量?

时间:2019-03-26 13:58:34

标签: c# asp.net

我在下面有代码:

<div class="row">
<%
    foreach (Product product in products)
    {
%>
<div class="col-md-3">
    <asp:LinkButton 
        class="card df gdc aic"
        OnClick="btnDetail_Click"
        ID="btnDetail" 
        runat="server">

        <%= product.Name %>

    </asp:LinkButton>
</div>
<%
    }
%>

代码<%= product.Name %>产生错误,指出名称product在当前上下文中不存在。

如何访问该product变量?

1 个答案:

答案 0 :(得分:0)

您将无法使用LinkBut​​ton进行操作。它将与普通的HTML链接一起工作。您应该改用Repeater:

<asp:Repeater runat="server" ID="productsList">
    <ItemTemplate>
        <div class="col-md-3">
            <asp:LinkButton 
                class="card df gdc aic"
                ID="btnDetail" 
                runat="server"
                Text='<%# Eval("Name") %>'>
            </asp:LinkButton>
        </div>
    </ItemTemplate>
</asp:Repeater>
productsList.DataSource = products;
productsList.DataBind();