首先:驅動
如果asp.net 想使用MongoDB,.net沒有自帶的鏈接類。得用第三方或官方的鏈接類。
當然有很多種驅動,我就不一一介紹了。
今天我就介紹一個我比較常用的驅動-----MongoDB。
接下來,我們還要去下載MongoDB的C#驅動,它可以讓我們在C#中使用MongoDB 。下載地址: https://github.com/samus/mongodb-csharp
我們在C#訪問MongoDB所需的驅動就是項目MongoDB了。編譯這個項目就能得到了,文件名:MongoDB.dll
asp.net 中 使用 MongoDB
首先先啓動MongoDB,我在之前的文章裏已經介紹過在這裏就不做介紹了。
建立一個實體類 用戶表
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
private string _connectionString = "Server=127.0.0.1"; //數據庫服務器ip或地址
private string _dbName = "dbmy";
添加數據
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);
}
}
刪除數據
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);
}
}
修改數據
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));
}
}
獲取數據
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的類。
test t=new test();
//插入數據
t.Insert(User);
//更新數據
t.Update(User);
//刪除數據
t.Delete(Uid);