数据源控件的ASP.NET参数

很多数据源控件都支持ASP.NET参数。

使用ASP.NET参数可以改变 数据源控件  执行时 所执行的命令。

不同类型的数据源控件使用不同的ASP.NET参数。例如:对SqlDataSource而言,参数是ADO.NET参数(也就是使用SLQ语句的参数)。而对ObjectDataSource控件,参数是方法参数,就是业务对象方法的参数。

SqlDataSource、AccessDataSource、ObjectDataSource 都支持 以下类型的参数对象:

  • Parameter对象——任意静态值
  • ContrlParameter对象——控件值页面的属性值
  • CookieParameter对象——浏览器的Cookie值
  • FormParameter对象——HTML表单中字段的值
  • QueryStringParameter对象——“查询字符串”中 字段的值
  • SessionParameter对象——(存储在)会话中的 项的值

示例

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

Protected Sub ddlCategory_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)

End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">


<div>
<asp:DropDownList ID="ddlCategory" DataSourceID="sdsCategory" runat="server"
DataTextField="name" DataValueField="id" OnSelectedIndexChanged="ddlCategory_SelectedIndexChanged" />

<asp:Button ID="btnSelect" Text="提交" runat="server" />
<asp:GridView ID="gv1" runat="server" DataSourceID="sdsMovies" />
</div>

<asp:SqlDataSource ID="sdsCategory" runat="server"
ConnectionString="data source=.\sqlexpress;integrated security=true;user instance=true;attachdbfilename=|datadirectory|mydatabase.mdf"
SelectCommand="select id,name from moviecategories" />

<asp:SqlDataSource ID="sdsMovies" runat="server"
ConnectionString="data source=.\sqlexpress;integrated security=true;user instance=true;attachdbfilename=|datadirectory|mydatabase.mdf"
SelectCommand="select title,director from movies where categoryId=@Id">
<SelectParameters>
<asp:ControlParameter Name="id"
Type="Int32"
ControlID="ddlCategory" />
</SelectParameters>
</asp:SqlDataSource>

</form>
</body>
</html>


原文地址:https://www.cnblogs.com/lizunicon/p/2434237.html