我有两个网页 - 第一个是GridView
,第二个是FormView
。我能够从DataKey
检索GridView
值并将其传递到FormView
页面。现在我需要将该键值用于我的选择查询。我该如何分配该值?代码示例将有助于C#。
这是我的page_load
代码:
protected void Page_Load(object sender, EventArgs e)
{
string CompanyStr = Server.HtmlEncode(Request.QueryString["param1"]);
string ClientKey = Request.QueryString["param2"];
Label lbl = FormView1.FindControl("CompanyID") as Label;
lbl.Text = CompanyStr;
}
这是FormView
代码:
<asp:FormView ID="FormView1" runat="server" DefaultMode="Insert" DataKeyNames="ClientKey"
DataSourceID="SqlDataSource1" onitemcommand="onItemCommand">
ClientKey
是需要设置的变量。
答案 0 :(得分:1)
听起来您希望在SQLDataSource1
标记(FormView
声明中引用的标记)中使用选择参数来执行此操作。这应该有效:
<asp:SqlDataSource ID="SQLDataSource1" runat="server"
ConnectionString="Your Connection Strong" SelectCommand="SELECT * FROM [yourTableName] WHERE ClientKey = @ClientKey">
<SelectParameters>
<asp:QueryStringParameter Name="ClientKey" QueryStringField="param2" />
</SelectParameters>
</asp:SqlDataSource>
注意WHERE
属性中的SelectCommand
子句。我不知道您的查询的其余部分是什么样的,但最后应该将您的FormView
过滤到您想要的内容。
这应该自动从查询字符串中提取值,并且FormView将加载正确的记录。