【问题标题】:How do I access a c# variable's value in an .aspx page?如何在 .aspx 页面中访问 c​​# 变量的值?
【发布时间】:2009-09-30 16:30:18
【问题描述】:

无法修改 Controls 集合,因为该控件包含代码块(即 )。

遇到问题时需要访问.aspx页面中的c#变量

请指导我们?

【问题讨论】:

  • 您能提供更多关于您的具体情况的信息吗?这有点模糊。

标签: asp.net


【解决方案1】:

如果您提供有关您正在尝试做的事情的更多详细信息会有所帮助,但是您可以试试这个:

首先在aspx 标记protected 中创建您想要访问的任何变量。

然后在page_load方法中,调用DataBind();

然后在你的标记中你可以这样做:

<%# VariableName %>

&lt;%=”序列只能在服务器控件的特定上下文中使用。序列“&lt;%#”用于 DataBound 控件,可以在 ASPX 页面标记中的任何上下文中使用。调用DataBind(); 允许您(几乎)在页面上的任何位置使用它。

【讨论】:

  • 我在 .aspx.cs 文件中分配 regression = (Session["Regression"]).ToString(); 然后在 .aspx 文件中使用它,例如 SelectCommand="SELECT [issue_oid], [issue_num], [regression], [status], [tested_by] , [tested_on], [patch_name], [arrived_on], [previous_info], [comment], [is_duplicate] FROM [itt_monthly_patch_issue_list] where status='Not Tested' and regression='&lt;%#regression%&gt;'" 但对我来说它不起作用。请建议我如何使用..
  • @picnic4u 请创建一个新问题,以便我可以适当地回答您的问题。我没有足够的信息来通过 cmets 解决您的问题,并且在该用户的问题中在 cmets 中回答将是题外话。
  • 请查看我的代码-我在这里提出了一个问题stackoverflow.com/questions/11445620/…
【解决方案2】:

您将需要页面上可以进行数据绑定的内容。将该对象绑定到它的数据源,然后您可以在 .aspx 中对其进行“评估”。

例如,如果您已将控件(可能在代码隐藏中)绑定到具有名为“Author”的属性的对象,则可以按以下方式显示它:

<asp:TableRow ID="trwMsgAuthor" runat="server">
   <asp:TableCell ID="TableCell2" runat="server" Width="1in">Author:</asp:TableCell>
   <asp:TableCell runat="server" ID="celMsgAuthor"><%#Eval("Author")%></asp:TableCell>
</asp:TableRow>

本例中的表格是 Accordion 控件的一部分,其中“.DataSource”属性设置为对象的通用列表,其中“Author”是属性之一。

【讨论】:

    【解决方案3】:

    在您的 ASPX 中,但在您的 &lt;%=x %&gt; 代码周围有一个 &lt;asp:literal runat=server&gt; 控件。

    【讨论】:

      【解决方案4】:

      在变量后面声明 C# 代码公共或受保护,然后在 &lt;% %&gt; 块中使用它。 例如&lt;%= strMyCodebehindvariable%&gt;&lt;%# strMyCodebehindvariable%&gt;。如果您使用第二个选项,那么您必须在页面加载中调用 DataBind() 方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多