1.简单数据绑定定

ASP.NET 2.0 绑定高级技巧<!--ASP.NET 1.x data binding expression -->
%>
2.数据源控件
ASP.NET 2.0 绑定高级技巧控件名                                     控件描述
ASP.NET 2.0 绑定高级技巧SqlDataSource                       一切支持SQL语句的数据源控件
ASP.NET 2.0 绑定高级技巧AccessDataSource               Access数据源控件
ASP.NET 2.0 绑定高级技巧XmlDataSource                     XML数据源控件
ASP.NET 2.0 绑定高级技巧ObjectDataSource                自行编写组件的数据源控件
ASP.NET 2.0 绑定高级技巧SiteMapDataSource             页面导航控件的数据源控件
 2.1 SqlDataSource关键属性
ASP.NET 2.0 绑定高级技巧名称                                               描述
ASP.NET 2.0 绑定高级技巧ConnectionString                        连接数据库的连接字符串
ASP.NET 2.0 绑定高级技巧SelectCommand                           用于执行查询的命令
ASP.NET 2.0 绑定高级技巧InsertCommand                           用于执行插入的命令
ASP.NET 2.0 绑定高级技巧UpdateCommand                        用于执行更新的命令
ASP.NET 2.0 绑定高级技巧DeleteCommand                          用于执行删除的命令
ASP.NET 2.0 绑定高级技巧DataSourceMode                        指定数据源类型是DataSet 或DataReader( 默认值
= DataSet)
ASP.NET 2.0 绑定高级技巧ProviderName                              指定供应商(默认值
= SQL Server .NET provider)
 2.2 SqlDataSource 支持通过以下属性进行数据缓存
ASP.NET 2.0 绑定高级技巧属性名                                         描述
ASP.NET 2.0 绑定高级技巧EnableCaching                           指定是否打开缓存(默认值
= false)
ASP.NET 2.0 绑定高级技巧CacheDuration                           指定结果被缓存多少妙
ASP.NET 2.0 绑定高级技巧CacheExpirationPolicy              指定缓存间隔是sliding 还是absolute
ASP.NET 2.0 绑定高级技巧CacheKeyDependency             使缓存依赖于一个特定键值
ASP.NET 2.0 绑定高级技巧SqlCacheDependency               使缓存依赖于一个特定数据库实体
2.3 参数化命令  XxxParameter 类型指定参数来源
ASP.NET 2.0 绑定高级技巧名称                                      描述
ASP.NET 2.0 绑定高级技巧SelectParameters                为查询命令指定参数
ASP.NET 2.0 绑定高级技巧InsertParameters                为插入命令指定参数
ASP.NET 2.0 绑定高级技巧UpdateParameters              为更新命令指定参数
ASP.NET 2.0 绑定高级技巧DeleteParameters               为删除命令指定参数
ASP.NET 2.0 绑定高级技巧FilterParameters                 为过滤器命令指定参数
2.4 XxxParameter 类型
ASP.NET 2.0 绑定高级技巧名称                                               描述
ASP.NET 2.0 绑定高级技巧ControlParameter                         指定一个源自于控件的参数
ASP.NET 2.0 绑定高级技巧CookieParameter                          指定一个源自于cookie的参数
ASP.NET 2.0 绑定高级技巧FormParameter                             指定一个源自于表单的参数
ASP.NET 2.0 绑定高级技巧ProfileParameter                           指定一个源自于profile的参数
ASP.NET 2.0 绑定高级技巧QueryStringParameter                 制定于一个来源于查询字符串的参数
ASP.NET 2.0 绑定高级技巧Parameter                                      为数据源绑定一个参数
ASP.NET 2.0 绑定高级技巧SessionParameter                        指定一个源自于session的参数
2.5 使用ControlParameter例子
ASP.NET 2.0 绑定高级技巧<asp:SqlDataSourceID="Countries" RunAt="server"
ASP.NET 2.0 绑定高级技巧ConnectionString
="server=localhost;database=northwind;"
ASP.NET 2.0 绑定高级技巧SelectCommand
="select distinct country from customers order by country" />
ASP.NET 2.0 绑定高级技巧
<asp:SqlDataSourceID="Customers" RunAt="server"
ASP.NET 2.0 绑定高级技巧ConnectionString
="server=localhost;database=northwind;"
ASP.NET 2.0 绑定高级技巧SelectCommand
="select * from customers where country =@Country">
ASP.NET 2.0 绑定高级技巧
<SelectParameters>
ASP.NET 2.0 绑定高级技巧
<asp:ControlParameterName="Country" ControlID="MyDropDownList"
ASP.NET 2.0 绑定高级技巧PropertyName
="SelectedValue" />
ASP.NET 2.0 绑定高级技巧
</SelectParameters>
ASP.NET 2.0 绑定高级技巧
</asp:SqlDataSource>
ASP.NET 2.0 绑定高级技巧
<asp:DropDownListID=" MyDropDownList" DataSourceID="Countries"
ASP.NET 2.0 绑定高级技巧DataTextField
="country" AutoPostBack="true" RunAt="server" />
ASP.NET 2.0 绑定高级技巧
<asp:DataGridDataSourceID="Customers" RunAt="server" />
2.7 调研存储过程例子
ASP.NET 2.0 绑定高级技巧<asp:SqlDataSourceID="Countries" RunAt="server"
ASP.NET 2.0 绑定高级技巧ConnectionString
="server=localhost;database=northwind;"
ASP.NET 2.0 绑定高级技巧SelectCommand
="proc_GetCountries" />
ASP.NET 2.0 绑定高级技巧
<asp:SqlDataSourceID="Customers" RunAt="server"
ASP.NET 2.0 绑定高级技巧ConnectionString
="server=localhost;database=northwind;"
ASP.NET 2.0 绑定高级技巧SelectCommand
="proc_GetCustomers">
ASP.NET 2.0 绑定高级技巧
<SelectParameters>
ASP.NET 2.0 绑定高级技巧
<asp:ControlParameterName="Country" ControlID="MyDropDownList"
ASP.NET 2.0 绑定高级技巧PropertyName
="SelectedValue" />
ASP.NET 2.0 绑定高级技巧
</SelectParameters>
ASP.NET 2.0 绑定高级技巧
</asp:SqlDataSource>
ASP.NET 2.0 绑定高级技巧
<asp:DropDownListID="MyDropDownList" DataSourceID="Countries"
ASP.NET 2.0 绑定高级技巧DataTextField
="country" AutoPostBack="true" RunAt="server" />
ASP.NET 2.0 绑定高级技巧
<asp:DataGridDataSourceID="Customers" RunAt="server" />
ASP.NET 2.0 绑定高级技巧CREATE PROCEDURE proc_GetCustomers
ASP.NET 2.0 绑定高级技巧@Country nvarchar(32) AS
ASP.NET 2.0 绑定高级技巧SELECT * FROM Customers
ASP.NET 2.0 绑定高级技巧WHERE Country = @Country
ASP.NET 2.0 绑定高级技巧GO
ASP.NET 2.0 绑定高级技巧CREATE PROCEDURE proc_GetCustomers
ASP.NET 2.0 绑定高级技巧CREATE PROCEDURE proc_GetCountriesAS
ASP.NET 2.0 绑定高级技巧SELECT DISTINCT Country
ASP.NET 2.0 绑定高级技巧FROM Customers
ASP.NET 2.0 绑定高级技巧ORDER BY Country
ASP.NET 2.0 绑定高级技巧GO
3.XmlDataSource 使用XML 作为数据源
支持缓存与XSL 转换,只支持查询绑定,不支持更新
ASP.NET 2.0 绑定高级技巧<asp:XmlDataSourceID="Rates" DataFile="Rates.xml" RunAt="server" />
ASP.NET 2.0 绑定高级技巧
<asp:TreeViewID="MyTreeView" DataSourceID="Rates" RunAt="server" />
3.1 XmlDataSource的关键属性
ASP.NET 2.0 绑定高级技巧名称                                                    描述
ASP.NET 2.0 绑定高级技巧DataFile XML                                    数据文件的路径
ASP.NET 2.0 绑定高级技巧TransformFile                                    含有XSL 风格定义的数据文件路径
ASP.NET 2.0 绑定高级技巧EnableCaching                                  指定是否开启cache (默认值= false)
ASP.NET 2.0 绑定高级技巧XPath XPath                                      表达式用来确认数据
ASP.NET 2.0 绑定高级技巧CacheDuration                                  以秒为单位的时间间隔
ASP.NET 2.0 绑定高级技巧CacheExpirationPolicy                     指定时间间隔是sliding 还是absolute
ASP.NET 2.0 绑定高级技巧CacheKeyDependency                    创建缓存依存于某个键
ASP.NET 2.0 绑定高级技巧
4. ObjectDataSource
从数据组件绑定数据,提供中间件的数据绑定,使数据访问和UI脱离,两种数据绑定方式
SelectMethod, InsertMethod, UpdateMethod,and DeleteMethod
可选择是否使用缓存,可选择是否使用参数
4.1 ODS 关键属性
ASP.NET 2.0 绑定高级技巧ODS 关键属性
ASP.NET 2.0 绑定高级技巧名称                                                         描述
ASP.NET 2.0 绑定高级技巧InsertParameters                                    指定插入方法参数
ASP.NET 2.0 绑定高级技巧UpdateParameters                                 指定更新方法参数
ASP.NET 2.0 绑定高级技巧DeleteParameters                                   指定删除方法参数
ASP.NET 2.0 绑定高级技巧SelectParameters                                    指定查询方法参数
ASP.NET 2.0 绑定高级技巧CacheDuration                                       缓存间隔时间以秒为单位
ASP.NET 2.0 绑定高级技巧SqlCacheDependency                          基于某个数据实体的缓存
ASP.NET 2.0 绑定高级技巧创建和清除
ASP.NET 2.0 绑定高级技巧ObjectDataSource.SelectMethod 可以使用静态方法也可以使用一个类的新实例
ASP.NET 2.0 绑定高级技巧如果使用实例方法:ODS 在每次调用的时候创建一个新实例类必须具有公共的建构函数
ASP.NET 2.0 绑定高级技巧使用ObjectCreated 和ObjectDisposing 元素可以初始化和撤销函数
5.增强的DataGrid 控件
支持复杂的数据单元格类型,包括CheckBoxFields在<Columns> 元素中声明高可定制的用户界面
gridView 列类型:
ASP.NET 2.0 绑定高级技巧名称                                             描述
ASP.NET 2.0 绑定高级技巧BoundField                                 显示数据库中取出的文本
ASP.NET 2.0 绑定高级技巧ButtonField                                显示按钮
ASP.NET 2.0 绑定高级技巧CheckBoxField                           使用check boxes显示一个boolean型变量
ASP.NET 2.0 绑定高级技巧HyperLinkField                          显示一个超链接
ASP.NET 2.0 绑定高级技巧TemplateField                            显示一个自定义的HTML模板
ASP.NET 2.0 绑定高级技巧CommandField                          显示一个查询或者编辑按钮
ASP.NET 2.0 绑定高级技巧ImageField                                 显示一个图片
6. 冲突判定
ASP.NET 2.0 绑定高级技巧先入胜利
ASP.NET 2.0 绑定高级技巧如果数据在取出之后被改变,则修改失败
ASP.NET 2.0 绑定高级技巧UpdateCommand结构构成指定ConflictDetection
=“CompareAllValues”来实现
ASP.NET 2.0 绑定高级技巧后入胜利
ASP.NET 2.0 绑定高级技巧无论数据是否被修改,该修改都会成功
ASP.NET 2.0 绑定高级技巧UpdateCommand结构构成指定ConflictDetection
=“OverwriteChanges”来实现
6.1 先入胜利法则更新
ASP.NET 2.0 绑定高级技巧<asp:SqlDataSourceID="Employees" RunAt="server"
ASP.NET 2.0 绑定高级技巧ConnectionString
="server=localhost;database=northwind;"
ASP.NET 2.0 绑定高级技巧SelectCommand
="select employeeid, lastname, firstnamefrom employees"
ASP.NET 2.0 绑定高级技巧UpdateCommand
="update employees set lastname=@lastname, firstname=
ASP.NET 2.0 绑定高级技巧@firstnamewhere employeeid=@original_employeeid and lastname=
ASP.NET 2.0 绑定高级技巧@original_lastnameand firstname=@original_firstname"

ASP.NET 2.0 绑定高级技巧ConflictDetection
="CompareAllValues">
ASP.NET 2.0 绑定高级技巧
<UpdateParameters>
ASP.NET 2.0 绑定高级技巧
<asp:ParameterName="EmployeeID" Type="Int32" />
ASP.NET 2.0 绑定高级技巧
<asp:ParameterName="lastname" Type="String" />
ASP.NET 2.0 绑定高级技巧
<asp:ParameterName="firstname" Type="String" />
ASP.NET 2.0 绑定高级技巧
</UpdateParameters>
ASP.NET 2.0 绑定高级技巧
</asp:SqlDataSource>
ASP.NET 2.0 绑定高级技巧
<asp:GridViewDataSourceID="Employees" Width="100%" RunAt="server"
ASP.NET 2.0 绑定高级技巧DataKeyNames
="EmployeeID" AutoGenerateEditButton="true" />
7.错误检测
数据更新后控件调用的事件GridView.RowUpdated,DetailsView.ItemUpdated,SqlDataSource.Updated, etc.
处理“status”的事件,无论数据库是否异常允许数据库异常被处理或者再次抛弃,显示多少数据库行被修改
处理更新错误
ASP.NET 2.0 绑定高级技巧<asp:SqlDataSourceID="Employees" RunAt="server" 
ASP.NET 2.0 绑定高级技巧UpdateCommand
="" OnUpdated="OnUpdateComplete">
ASP.NET 2.0 绑定高级技巧
ASP.NET 2.0 绑定高级技巧
</asp:SqlDataSource>
ASP.NET 2.0 绑定高级技巧
ASP.NET 2.0 绑定高级技巧void OnUpdateComplete (Object source, SqlDataSourceStatusEventsArgse)
ASP.NET 2.0 绑定高级技巧{
ASP.NET 2.0 绑定高级技巧if (e.Exception!= null) {
ASP.NET 2.0 绑定高级技巧// Exception thrown. Set e.ExceptionHandledto true to prevent
ASP.NET 2.0 绑定高级技巧// the SqlDataSourcefrom throwing an exception, or leave it set
ASP.NET 2.0 绑定高级技巧// to false to allow SqlDataSourceto rethrowthe exception
ASP.NET 2.0 绑定高级技巧}
ASP.NET 2.0 绑定高级技巧else if (e.AffectedRows== 0) {
ASP.NET 2.0 绑定高级技巧// No exception was thrown, but no records were updated,either.
ASP.NET 2.0 绑定高级技巧// Might want to let the user know that the update failed
ASP.NET 2.0 绑定高级技巧}
ASP.NET 2.0 绑定高级技巧}

相关文章: