C# 對(duì)MongoDB 進(jìn)行增刪改查的簡(jiǎn)單操作實(shí)例
運(yùn)用到的MongoDB支持的C#驅(qū)動(dòng),當(dāng)前版本為1.6.0
下載地址:https://github.com/mongodb/mongo-csharp-driver/downloads
1,連接數(shù)據(jù)庫(kù)
/// <summary>
/// 數(shù)據(jù)庫(kù)連接
/// </summary>
private const string conn = "mongodb://127.0.0.1:27017";
/// <summary>
/// 指定的數(shù)據(jù)庫(kù)
/// </summary>
private const string dbName = "mongodb_name";
/// <summary>
/// 指定的表
/// </summary>
private const string tbName = "table_text";
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection col = db.GetCollection(tbName);
2、插入數(shù)據(jù)
因?yàn)镸ongoDB沒有表的概念,所以自插入數(shù)據(jù)之前定義好自己的數(shù)據(jù)模型
User.cs
下面是添加數(shù)據(jù)的代碼
/// <summary>
/// 添加
/// </summary>
/// <param name="text">內(nèi)容</param>
/// <param name="articleId">文章ID</param>
/// <param name="channelId">頻道ID</param>
/// <returns></returns>
public static void Add(User t)
{
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection col = db.GetCollection(tbName);
//插入
col.Insert(t);
}
3、刪除操作
/// <summary>
/// 根據(jù)ObjectID 刪除
/// </summary>
/// <param name="objId"></param>
public static void Delete(string objId)
{
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
IMongoQuery query = Query.EQ("_id", new ObjectId(objId));
col.Remove(query);
}
4、修改
/// <summary>
/// 根據(jù)ObjectID 修改
/// </summary>
public static void Update(User t)
{
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
BsonDocument bd = BsonExtensionMethods.ToBsonDocument(t);
IMongoQuery query = Query.EQ("_id", t.Id);
col.Update(query, new UpdateDocument(bd));
}
5、條件查詢(簡(jiǎn)單)
/// <summary>
/// 根據(jù)ObjectID 查詢
/// </summary>
public static TuCao SelectOne(string objId)
{
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
//條件查詢
return col.FindOne(Query.EQ("_id", new ObjectId(objId)));
}
6、查詢?nèi)?/P>
/// <summary>
/// 查詢所有
/// </summary>
public static void SelectAll()
{
List<User> list = new List<User>();
//創(chuàng)建數(shù)據(jù)連接
MongoServer server = MongoServer.Create(conn);
//獲取指定數(shù)據(jù)庫(kù)
MongoDatabase db = server.GetDatabase(dbName);
//獲取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
//查詢?nèi)?BR> list.AddRange(col.FindAll());
//--------------------------------
foreach (TuCao t in col.FindAll())
{
string id = t.Id.ToString();
string text = t.Text;
DateTime dt = t.Createdate;
}
}
相關(guān)文章
C#實(shí)現(xiàn)寫入與讀出文本文件的實(shí)例代碼
本篇文章是對(duì)使用C#實(shí)現(xiàn)寫入與讀出文本文件的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
C#具名參數(shù)(Named Parameters)的使用
在C#中,具名參數(shù)是一種在方法調(diào)用中使用參數(shù)名稱來(lái)指定參數(shù)值的技術(shù),本文主要介紹了C#具名參數(shù)的使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01
C#實(shí)現(xiàn)設(shè)置Excel表格中文本對(duì)齊方式和格式
這篇文章主要為大家詳細(xì)介紹了如何在.NET 程序中通過C# 設(shè)置Excel單元格中文本的對(duì)齊方式,方向以及換行,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-04-04
C#實(shí)現(xiàn)簡(jiǎn)單加減乘除計(jì)算器
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)簡(jiǎn)單加減乘除計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
c#中DataTable轉(zhuǎn)List的2種方法示例
這篇文章主要給大家介紹了關(guān)于c#中DataTable轉(zhuǎn)List的2種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04

