在 WinRT (Win8) 中使用基于异步的 Web 服务和异步框架从远程 Ms SQL Server 获取大型记录集(1000 到 5000)。
我想知道 :
1) 将大型记录集插入 SQLite 的最佳方法是什么?
2) 如果出现连接错误,使用 RollBack 事务将重新开始。下面的方法将插入任何内容,如果记录不完整,我可以稍后更新数据。这是一个好方法吗?
3)有什么更好的方法来增强我的以下解决方案?
这个foreach语句要处理 每个从基于异步的 WebService 返回的结果中重新排序: foreach(IList 中的 WebServiceList _List) { InsertNewItems(_List.No,_List.Description,_List.Unit_Price,_List.Base_Unit_of_Measure); } 私人无效InsertNewItems(字符串ItemNo,字符串ItemName,十进制ItemPrice,字符串ItemBUoM) { var existingItem = (db2.Table().Where(c => c.No == ItemNo)).SingleOrDefault(); 如果(现有项目!= null) { 现有项目.No = 项目编号; 现有项目.描述 = 项目名称; 现有Item.Unit_Price = ItemPrice; 现有的Item.BaseUnitofMeasure = ItemBUoM; int 成功 = db2.Update(existingItem); } 别的 { int 成功 = db2.Insert(new Item() { 编号 = 项目编号, 描述 = 项目名称, Unit_Price = ItemPrice, Base_Unit_of_Measure = ItemBUoM }); } }