SQL Server Mobile 2005 程序开发(三) 2019年4月17日6时16分 SQL Server Mobile 2005 程序开发(三) 黎 波 30分钟 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
回顾 SQL Server Mobile 概述 SQL Server Mobile 新特性 数据库引擎的编程 ADO.NET 编程模型 2019年4月17日6时16分 回顾 SQL Server Mobile 概述 SQL Server Mobile 新特性 数据库引擎的编程 ADO.NET 编程模型 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
内容 什么是 SqlCeResultSet? 强类型的 SqlCeResultSet SqlCeResultSet 的数据绑定 2019年4月17日6时16分 内容 什么是 SqlCeResultSet? 强类型的 SqlCeResultSet SqlCeResultSet 的数据绑定 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
目标 理解 SqlCeResultSet 的特点 了解强类型 SqlCeResultSet 的创建 2019年4月17日6时16分 目标 理解 SqlCeResultSet 的特点 了解强类型 SqlCeResultSet 的创建 了解 SqlCeResultSet 的数据绑定 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
什么是 SqlCeResultSet? SqlCeResultSet 是一个特殊的 DataReader (继承 SqlCeDataReader) 但是不像一般的 DataReader, 你可以向前或向后来查看数据 而且可以将修改的数据 Update 到数据库中 因为实现了 IListSource,所以支持被 WinForm 控件进行数据绑定 始终与数据库连接,不像 DataSet,可以实时显示被其他连接改变的数据 .NET Compact Framework 2.0 支持
SqlCeResultSet Class 2019年4月17日6时16分 IListSource, SqlCeDataReader, ResultSetView, CreateRecord, Delete, Insert, Update, Read, ReadPrevious, ReadFirst, ReadLast, ReadAbsolute © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
演示:在 Visual Studio 2005 中创建强类型的 ResultSet 2019年4月17日6时16分 演示:在 Visual Studio 2005 中创建强类型的 ResultSet DEMO 添加Northwind.sdf数据库的数据源 修改数据源为详细信息展现方式 修改某些控件类型 将数据源拖到窗体上 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
使用强类型的 SqlCeResultSet 2019年4月17日6时16分 使用强类型的 SqlCeResultSet 使用Visual Studio 2005 Data Source wizard 将.xsd file Custom Tool 属性改为MSResultSetGenerator 为了增加适应性,通过 partial classe 扩展产生 typed SqlCeResultSet 代码 在 Data Source 页中使用数据绑定控件 Typed ResultSet 可以通过 new 操作符来创建 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
ResultSetOptions 使用 SqlCeCommand.ExecuteResultSet 创建对象 Insensitive -不会发现其他数据连接对数据源的改变 Sensitive-察觉来自其他数据连接的改变 – Base table cursors的属性始终为sensitive – TableDirect CommandType => Base table cursor Scrollable -你可以向前或向后读取数据 Updatable -允许更新 None –只读,单向浏览数据
SqlCeResultSet 加载数据 从数据库中加载数据 – 使用SqlCeResultSet – 使用TableDirect – 如果需要修改数据库,则使用ResultSetOptions.Updatable
演示: Data Binding 和 SqlCeResultSet 2019年4月17日6时16分 演示: Data Binding 和 SqlCeResultSet DEMO 添加Northwind.sdf数据库的数据源 修改数据源为详细信息展现方式 修改某些控件类型 将数据源拖到窗体上 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
使用 BindingSource BindingSource 控件(new in Microsoft .NET 2.0) 提供数据源与窗体控件间的间接逻辑层 为数据集合提供 strong-typed 数据绑定 将 BindingSource.DataSource 设置为ResultSet ,然后将控件的 DataSource 属性 设置为 BindingSource – Visual Studio 中的大部分控件可以用于数据绑定 – 控件被绑定到同一个 BindingSource 上,可以保持一致
BindingSource 使用 SqlCeResultSet.Bind 方法绑定BindingSource 使用 BindingSource 方法来移动SqlCeResultSets MoveFirst, MoveLast, MoveNext, MovePrevious
BindingSource 更新 在数据绑定控件中的任何改变,可以更新到数据库中 – 调用 EndEdit() 保存编辑 – 调用 CancelEdit() 取消当前编辑 – 移动到另外的数据行时(在内部调用EndEdit)
ResultSetView 数据绑定 不需要使用 BindingSource,也可以进行数据绑定 DataGrid.DataSource = your ResultSetView 简单 control(例如TextBox) 使用ResultSetView 作为 data source 参数 TextBox.DataBindings.Add("text", ResultSet.ResultSetView,"Customer ID", true, DataSourceUpdateMode.Never); List controls (ListBox, ComboBox) ListBox.DataSource = your view ListBox.DisplayMember = view.Columns[n] ListBox.ValueMember = view.Columns[n]
小结 什么是 SqlCeResultSet? 强类型的 SqlCeResultSet SqlCeResultSet 的数据绑定 2019年4月17日6时16分 小结 什么是 SqlCeResultSet? 强类型的 SqlCeResultSet SqlCeResultSet 的数据绑定 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
2019年4月17日6时16分 Q & A © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
2019年4月17日6时16分 Thank You! © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.