Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何访问.aspx文件中.aspx.cs文件的字符串变量值_Asp.net_C# 2.0 - Fatal编程技术网

Asp.net 如何访问.aspx文件中.aspx.cs文件的字符串变量值

Asp.net 如何访问.aspx文件中.aspx.cs文件的字符串变量值,asp.net,c#-2.0,Asp.net,C# 2.0,我得到的字符串值回归为regression=(Session[“regression”])在.aspx.cs文件中,然后我想在SqlDataSource属性的SelectCommand中的.aspx文件中使用此值,如下所示 SelectCommand="SELECT [issue_oid], [issue_num], [regression], [status], [tested_by], [tested_on], [patch_name], [arrived_on],

我得到的字符串值回归为
regression=(Session[“regression”])
在.aspx.cs文件中,然后我想在SqlDataSource属性的SelectCommand中的.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='<%#regression%>'"`
请建议我怎么做?
提前感谢…

向sql数据源添加会话参数,如下所示

<asp:SqlDataSource 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='<%#regression%>'"`>

<SelectParameters>
        <asp:SessionParameter SessionField="Regression" Name="ParameterName" Type="String" />
</SelectParameters>
</asp:SqlDataSource>

您可以在SQLDatasource中输入会话变量的值。比如这个例子

<asp:SqlDataSource ID="SqlDataSource1" runat="server"
    ConnectionString="<%$ ConnectionStrings:testDatabaseConnectionString %>"
    SelectCommand="SELECT * FROM [UserTable] WHERE ([userID] = @UserID)">
    <SelectParameters>
        <asp:SessionParameter Name="UserID" SessionField="UserID" Type="Int32" />
    </SelectParameters>
</asp:SqlDataSource>

让我们了解有关此方面的任何其他问题。

尝试以下方法:

  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='<%=ReturnRegression()%>'"`
试试这个:

public StringBuilder regression = new StringBuilder();
regression.Append((Session["Regression"]).ToString());
然后在.aspx页面(在selct命令中),您可以使用“回归”作为:



这可以通过使用System.CodeDom、expressionBuilders和我曾经做过的类似任务来完成。这提醒了我为什么讨厌WebForms。仍然没有从DB中获取数据bcoz回归值不是从aspx.cs页面到aspx页面检查此链接的第三篇帖子:[link]()。。希望它能帮助Youth在google中尝试以下搜索:“从代码隐藏到sqldatasource获取字符串变量”。。你会得到很好的结果。不工作。对于
像get或set方法,我有什么需要做的吗???你现在遇到了什么错误?这是唯一的方法,您必须以声明方式(在aspx代码中)或编程方式(在后台代码中)将会话feld添加到sqldatasource中。SelectCommand=“选择[issue\u oid]、[issue\u num]、[Returnal]、[status]、[tested\u by]、[tested\u on]、[patch\u name]、[arrived\u on]、[previous\u info]、[comment]、[is\u duplicate]FROM][itt\u每月\u补丁\u发布列表]其中状态='未测试'和[回归]=''”实际上,上面的命令并没有从db中获取数据,因为查询的列
回归
的值不正确,只是为了确认,我正在wep页面上的最后一个标签中打印该值,但它正在打印,因为它就像不需要以这种格式写入回归一样“”bcz您已经在select参数中定义了它。如果您在sqldatasource的select参数中的会话参数中指定名称Regresion,那么在select命令中写入参数的名称,该名称将是Regresion。您的查询应该像SelectCommand=“select[issue_oid]、[issue_num]、[REGRESURE]、[status]、[TESTEED_by],[测试日期],[补丁名称],[到达日期],[以前的信息],[评论],[是重复的]来自[itt\U每月补丁发布列表],其中状态为未测试,[回归]=“回归”或者转到网页的“设计”视图,选择sqldatasource设置其数据库属性,并从中设置会话字段。如何在测试级别上打印它,表示它是否出现在网页中
    string regression=null;//Before Page_Load

    protected string ReturnRegression()
    {
    //Write logic here to prevent null being returned
        return regression;
    }
public StringBuilder regression = new StringBuilder();
regression.Append((Session["Regression"]).ToString());
 <% =regression %>