我有一个表单视图,我根据从引用母版页获得的值选择数据。我想将我的参数设置为代码后面的某个值,而不是将这些值存储在隐藏字段中,并将我的参数源设置为控件(隐藏字段控件)
这是可能的吗?如果是这样 - 怎么样?
我正在使用SQL数据源
答案 0 :(得分:1)
处理数据源的OnSelecting事件。从那里,您可以获得对用于查询的命令对象的引用,并修改它的参数集合。
您没有准确分享您正在使用的数据源类型,但这是一个使用SqlDataSource的示例:
<asp:SqlDataSource runat="server" ID="MyDataSource" OnSelecting="OnMyDataSourceSelecting" ...>
<SelectParameters>
<asp:Parameter Type="..." Name="SomeParameter" />
</SelectParameters>
</asp:SqlDataSource>
请注意,它只是一个普通的asp:Parameter
。不是Session参数。不是Control参数。不是QueryString参数。都不是。只是一个普通的通用参数。听起来你正在使用向导来设置它们,因为我很少使用向导,所以我不确定你如何告诉它使用泛型参数。但是你可以选择一个,然后在向导完成后返回并修复标记。
void OnMyDataSourceSelecting(object sender, SqlDataSourceSelectingEventArgs e)
{
e.Command.Parameters["@SomeParamter"].Value = "somevalue";
}