Windows Powered Pocket PC Phone Edition 的数据库开发
2008-09-09 10:04:50 来源:WEB开发网以下示例代码显示如何使用 DataReader 方法完成同样的操作。
private void UpdateDetailedResultListView()
{
// 使用 DataReader 来更新详细结果。
// 已知错误:
// 版本 日期 人员 注释
// 00.00.000 020808 ASJ 创建
// *****************************
SQLServerCEWrapper SSCEWrapper = new SQLServerCEWrapper();
string SQL;
// 用于获取详细 ListView 的 SQL!
SQL = "SELECT PlayerName, Hole, Result FROM Result
ORDER BY PlayerName, Hole";
SqlCeConnection cn = new SqlCeConnection();
cn.ConnectionString = SSCEWrapper.LocalConnection;
// 打开连接
cn.Open();
// 启动命令并执行读取器。
SqlCeCommand cmd = new SqlCeCommand(SQL,cn);
SqlCeDataReader dtr = cmd.ExecuteReader();
// 清除 ListView
this.lvwResultDetailed.Items.Clear();
// 开始读取!
while (dtr.Read())
{
ListViewItem lviItem = new ListViewItem(dtr["PlayerName"].ToString());
lviItem.SubItems.Add(dtr["Hole"].ToString());
lviItem.SubItems.Add(dtr["Result"].ToString());
lvwResultDetailed.Items.Add(lviItem);
}
// 关闭 DataReader
dtr.Close();
// 清理
cmd.Dispose(true);
cn.Dispose();
}
最后请注意,可供下载的示例代码使用了一些错误处理。我还在项目中保留了 Options 窗体(见图 4),当然它需要更多的代码支持。
图 4:SQL Server CE Options 窗体
提示和技巧
以下是一些提示和技巧,供您参考:
请一位用户界面设计人员。
在 SQL Server CE 代码中包含适当的错误处理,可以使用 Try、Catch 和 Finally 结构。
如果没有可用于开发的 Pocket PC 或者您的 Pocket PC 没有以太网适配器,您可以使用 Pocket Emulator。
信任 SQL Server CE Connectivity Wizards,或至少在开始工作时使用它们。
使用服务器端的 SQL Profiler 或者使用 Merge Replication 来监视数据强制上载和请求下载时的情况。即使没有其他作用,您也可以看到何时或是否发生了什么情况。
了解如何通过 Internet 查找编码问题的答案。下面列出了我喜欢的一些站点。
小结
Visual Studio .NET、Visual C# 或 Visual Basic .NET 与 SQL Server CE 2.0 之间的协作非常好。希望您能从我的文章中获得一些有益的启示。
更多精彩
赞助商链接