数据绑定控件有以下几种:
BulletedList------------列表项
CheckBoxList-----------复选框列表
DropDownList
ListBox
ReadioButtonList
以上控件是通过DataSourceId和DataSource控件进行联系的。
*** 可以显示一组数据
GridView 在html表格中显示一组记录。
DataList(可以在一行中显示多条记录)
Reapter 使用模板显示一组记录。它不会自动呈现一个html表格。
*** 以下控件一次显示一个数据项
detailView 在html表格中显示一个数据项
Formview 使用模板来显示一个数据项。
***
几种DataSouce的使用方法
*** SqlConnectionStringBuilder 格式化连接字符串。同时可以修改一些参数。

***
SqlDataSource可以配置 ProviderName="System.Data.OracleClient",连接oracle数据库,连接Oracle数据请先安装Oracle客户端。
***
在web.config里面保存数据库连接字符串。
使用<%$ ConnectionStrings:Movies%>在DataSource中表示连接字符串。
如下
<asp:SqlDataSource
id="srcMovies"
SelectCommand="SELECT * FROM Movies"
ConnectionString="<%$ ConnectionStrings:Movies %>"
Runat="server" />
***执行存储过程
SelectCommandType
UpdateCommandType
来执行存储过程
***表达式过滤器
id="srcMovies"
SelectCommand="SELECT Id,Title,Director,DateReleased
FROM Movies"
FilterExpression="Title LIKE '{0}%'"
ConnectionString="<%$ ConnectionStrings:Movies %>"
Runat="server">
<FilterParameters>
<asp:ControlParameter Name="Title" ControlID="txtTitle" />
</FilterParameters>
</asp:SqlDataSource>
可以设置 DataSourceMode="DataReader"
***处理DataSouce异常
比如查询异常
在DataSouce的属性中添加事件处理程序,onselected="selecterror"
{
If (e.Exceptin != null)
e.ExceptionHandled = true;
//
}
第二种方法是在数据绑定事件里进行处理。
***取消sql的执行或在执行前加入条件判断
通过处理以下的事件
Deleting
Filtering
Inserting
Selecting
Updating
在这些事件 参数 e,包含此命令的相关信息。
***使用asp.net参数对象
<asp:Parameter Name="title" Type="String" Size="100" DefaultValue="untitled" />
</UpdateParameters>
***可以使用ControlParameter 利用page对象的属性,来获取page对象的属性。
<InsertParameters>
<asp:ControlParameter Name="IPAddress" ControlID="__page"
PropertyName="IPAddress" />
</InsertParameters>
if (Request.Form["addmovie"] != null)
srcmovies.Insert();
***对于DataGridView中的连接
<asp:HyperLinkField
DataTextField="Title"
DataNavigateUrlFields="Id"
DataNavigateUrlFormatString
="ShowQueryStringParameterDetails.aspx?id={0}" />
***通过程序执行SqlDataSource命令
1.添加ADO.NET参数
Protected void srcGuestBook_Inserting(object sender,SqlDataSourcecommadEventSr e)
{
E.command.parameters.Add(new SqlParameter("@name",User.Identity.Name));
}
2.执行insert,update 和 delete命令
Insert ,delete,update
{
srcGuestBook.InsertParameters["Name"].DefaultValue = txtName.Text;
srcGuestBook.InsertParameters["Comments"].DefaultValue = txtComments.Text;
srcGuestBook.Insert();
}
3.执行select命令
string imageId = context.Request.QueryString["Id"];
// Use SqlDataSource to grab image bytes
SqlDataSource src = new SqlDataSource();
src.ConnectionString = WebConfigurationManager.ConnectionStrings["Images"].ConnectionString;
src.SelectCommand = "SELECT Image FROM Images WHERE Id=" + imageId;
// Return a DataView
DataView view = (DataView)src.Select(DataSourceSelectArguments.Empty);
context.Response.BinaryWrite( (byte[])view[0]["Image"]);
***如何从数据库把图片显示在网页上,在主页面中做一个链接,链接到一个httphandler,在此处理程序中输出图片。
***利用缓存
EnableCaching
CacheDuration