C# asp.net动态文本语法:什么是<;%#[此处代码]]>'&引用;做

C# asp.net动态文本语法:什么是<;%#[此处代码]]>'&引用;做,c#,asp.net,tsql,telerik,C#,Asp.net,Tsql,Telerik,我对.NET和web开发基本上是新手,一直在编写别人编写的代码,但不知道这个特定语法在做什么。我有一个telerik RadGrid,它动态显示来自tsql数据库的数据,并使用GridTemplateColumn ItemTemplate显示asp:Label控件。该控件的文本值为Text=''。“RoleCode”对应于存储过程返回的一行,“Eval”是一个我在页面上没有使用的类,但在我的应用程序的其他地方使用过它来(我想)访问存储在该类中的属性。(RoleCode是该类中的一个属性。)我的代

我对.NET和web开发基本上是新手,一直在编写别人编写的代码,但不知道这个特定语法在做什么。我有一个telerik RadGrid,它动态显示来自tsql数据库的数据,并使用GridTemplateColumn ItemTemplate显示asp:Label控件。该控件的文本值为Text=''。“RoleCode”对应于存储过程返回的一行,“Eval”是一个我在页面上没有使用的类,但在我的应用程序的其他地方使用过它来(我想)访问存储在该类中的属性。(RoleCode是该类中的一个属性。)我的代码可以工作,但由于该页上没有使用Eval类,我不明白它为什么可以工作

这和我页面顶部的代码是同一种代码吗

<telerik:RadGrid ID="grd1" runat="server" AllowSorting="true" OnNeedDataSource="grd1_NeedDataSource"
    <MasterTableView ShowHeader="true" ShowFooter="false" CommandItemDisplay="Top" DataKeyNames="PersonID"
        AllowSorting="true" EditFormSettings-EditColumn-Visible="false" EditFormSettings-ColumnNumber="2">
        <Columns>
            <other rows here>
            <telerik:GridTemplateColumn HeaderText="Role Code" DataField="RoleCode" SortExpression="RoleCode" EditFormColumnIndex="1">
                <ItemTemplate>
                    <asp:Label ID="lbl2" runat="server" Text='<%# Eval("RoleCode") %>' />
                </ItemTemplate>
                <EditItemTemplate>
                    <asp:DropDownList ID="ddlRoleCode" runat="server">
                        <asp:ListItem>RTR</asp:ListItem>
                        <asp:ListItem>INT</asp:ListItem>
                    </asp:DropDownList>
                </EditItemTemplate>
            </telerik:GridTemplateColumn>
        </Columns

RTR
国际的
标记是ASP.NET中的代码标记。它们允许您在标记页面中运行C#(或VB.NET)代码

当出现
#
时,表示它是一个绑定表达式。在执行数据绑定的控件内,例如您引用的
RadGrid
标记(以及
Eval
方法)允许您将当前行的数据绑定到网格内的控件


因此,在您的示例中,对于要绑定的数据集合中的每一行,
lbl2
标签的文本设置为
RoleCode
列的值

这些是asp.net中的服务器标记,下面是一个解释,它是一个数据绑定表达式。这意味着
lbl2.Text
将被分配给被数据绑定对象的
RoleCode
属性的值。顺便说一句,这里有一些aspx魔术
Eval
实际上调用了类似(从内存中)的东西
DataBinder.Eval(container.DataItem,“RoleCode”)
这就是我需要的,谢谢!