asp.net 使用 MongoDB 初體驗
我們在C#訪問MongoDB所需的驅動就是項目MongoDB了。編譯這個項目就能得到了,文件名:MongoDB.dll
asp.net 中 使用 MongoDB
首先先啓動MongoDB,我在之前的文章裏已經介紹過在這裏就不做介紹了。
建立一個實體類 用戶表
[csharp] view plain copy
- public partial class User{
- [MongoId]
- public string UID{ get; set; }
- public string NAME{ get; set; }
- public string SEX{ get; set; }
- public int AGE{ get; set; }
- }
說明:這就是一個簡單的類,而且代碼中的[MongoId]也是可以不要的,如果要是寫了他會映射"_id"字段。
MongoDB數據庫首先先建一個數據庫叫“dbmy”,建一個集合(表)“User”,在建立文檔(數據)。
一下例子都需要引入MongoDB.dll
[csharp] view plain copy
- private string _connectionString = "Server=127.0.0.1"; //數據庫服務器ip或地址
- private string _dbName = "dbmy";
添加數據
[csharp] view plain copy
- public void Insert(User user)
- {
- user.UID = Guid.NewGuid().ToString("N");
- // 首先創建一個連接
- using( Mongo mongo = new Mongo(_connectionString) ) {
- // 打開連接
- mongo.Connect();
- // 切換到指定的數據庫
- var db = mongo.GetDatabase(_dbName);
- // 根據類型獲取相應的集合
- var collection = db.GetCollection<User>();
- // 向集合中插入對象
- collection.Insert(customer);
- }
- }
刪除數據
[csharp] view plain copy
- public void Delete(string UId)
- {
- using( Mongo mongo = new Mongo(_connectionString) ) {
- mongo.Connect();
- var db = mongo.GetDatabase(_dbName);
- var collection = db.GetCollection<Customer>();
- // 從集合中刪除指定的對象
- collection.Remove(x => x.UID == UId);
- }
- }
修改數據
[csharp] view plain copy
- public void Update(User user)
- {
- using( Mongo mongo = new Mongo(_connectionString) ) {
- mongo.Connect();
- var db = mongo.GetDatabase(_dbName);
- var collection = db.GetCollection<User>();
- // 更新對象
- collection.Update(user, (x => x.UID == user.UID));
- }
- }
獲取數據
[csharp] view plain copy
- public User GetById(string UId)
- {
- using( Mongo mongo = new Mongo(_connectionString) ) {
- mongo.Connect();
- var db = mongo.GetDatabase(_dbName);
- var collection = db.GetCollection<User>();
- // 查詢單個對象
- return collection.FindOne(x => x.UID == UId);
- }
- }
調用
假如把操作方法都封裝在一個叫test.cs的類。
[csharp] view plain copy
- test t=new test();
- //插入數據
- t.Insert(User);
- //更新數據
- t.Update(User);
- //刪除數據
- t.Delete(Uid);