设为首页 加入收藏

TOP

8天学通MongoDB――第八天 驱动实践(三)
2014-11-23 20:25:48 来源: 作者: 【 】 浏览:35
Tags:MongoDB 第八 驱动 实践
.Disconnect(); throw; } } } #endregion #region 更新操作 /// /// 更新操作 /// /// /// public void Update(T t, Expression> func) { using (Mongo mongo = new Mongo(configuration)) { try { mongo.Connect(); var db = mongo.GetDatabase(databaseName); var collection = db.GetCollection(collectionName); collection.Update(t, func, true); mongo.Disconnect(); } catch (Exception) { mongo.Disconnect(); throw; } } } #endregion #region 获取集合 /// ///获取集合 /// /// /// public List List(int pageIndex, int pageSize, Expression> func, out int pageCount) { pageCount = 0; using (Mongo mongo = new Mongo(configuration)) { try { mongo.Connect(); var db = mongo.GetDatabase(databaseName); var collection = db.GetCollection(collectionName); pageCount = Convert.ToInt32(collection.Count()); var personList = collection.Linq().Where(func).Skip(pageSize * (pageIndex - 1)) .Take(pageSize).Select(i => i).ToList(); mongo.Disconnect(); return personList; } catch (Exception) { mongo.Disconnect(); throw; } } } #endregion #region 读取单条记录 /// ///读取单条记录 /// /// /// public T Single(Expression> func) { using (Mongo mongo = new Mongo(configuration)) { try { mongo.Connect(); var db = mongo.GetDatabase(databaseName); var collection = db.GetCollection(collectionName); var single = collection.Linq().FirstOrDefault(func); mongo.Disconnect(); return single; } catch (Exception) { mongo.Disconnect(); throw; } } } #endregion #region 删除操作 /// /// 删除操作 /// /// /// public void Delete(Expression> func) { using (Mongo mongo = new Mongo(configuration)) { try { mongo.Connect(); var db = mongo.GetDatabase(databaseName); var collection = db.GetCollection(collectionName); //这个地方要注意,一定要加上T参数,否则会当作object类型处理 //导致删除失败 collection.Remove(func); mongo.Disconnect(); } catch (Exception) { mongo.Disconnect(); throw; } } } #endregion } #region 数据实体 /// /// 数据实体 /// public class Person { [MongoAlias("_id")] public string ID { get; set; } public string Name { get; set; } public int Age { get; set; } public DateTime CreateTime { get; set; } } #endregion }

wow,趁着3天的休假,不断的努力终于把这个系列写完了,很感谢一直关注此系列的朋友


首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇查询性能“逆袭”―巧用“BETWEE.. 下一篇到底该不该继续使用MySQL数据库?

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: