共計 3660 個字符,預計需要花費 10 分鐘才能閱讀完成。
這篇文章主要介紹了怎么在.NET 中使用 MongoDB 以及基本的 CRUD 操作,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。
MongoDB
NoSQL 是一種面向文檔的數據庫系統,以特定的格式儲存,如 JSON。MongoDB 是當前 NoSQ 數據庫產品中最熱門的一種,它具高性能、易部署、易使用的特點,以及豐富的輕量級二進制格式。
MongoDB 最大的特點是支持的查詢語言非常強大,幾乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引,是一個面向集合的, 模式自由的文檔型數據庫。
本文將詳細介紹 MongoDB 的安裝、.NET 應用程序中的 MongoDB(C#代碼)的使用以及演示基本的 CRUD 操作
MongoDB 的優點
方便儲存大量結構簡單的數據
速度快,適用于大而復雜的數據環境
在云上有很高的靈活性和可用性
很容易擴展
使用 MongoDB 的動態模式,可以實現快速開發
MongoDB 不會將數據保存在行中,所有數據都儲存在單個文檔中。從程序員的角度看,MongoDB 可以處理純 JSON 文件。詳見如下 MongoDB 文檔示例:
{ employeeid : ObjectId( R8rGt541b1ad7d0c4rcfgt7549),
employeename : Tapas Pal ,
department : IT ,
numberOfArticles : 50,
Address : [
street : Some Street ,
city : Kolkata ,
country : India
],
companyname : XYZ ,
skills : [.NET , JavaScript , NoSQL , Node.js , HTML]
}
獲取 MongoDB
MongoDB
是一個免費的開源數據庫,你可以從特定的鏈接去下載。MongoDB 還提供了一個很大的驅動程序列表,方便不同編程語言與數據庫之間的通信。如果要與.NET 一起使用,則需要從 NuGet 包安裝驅動程序。NET 驅動程序包括 MongoDB.Bson,MongoDB.Driver 和 MongoDB.Driver.Core。
.NET 項目
現在,讓我們創建一個.NET 控制臺應用程序來演示 MongoDB 上的 CRUD 操作。在運行 mongod.exe 是要確保提示命令顯示一切正常,以便在執行控制臺應用程序時保持 MongoDB 服務器正常運行。
步驟 1
打開 Visual Studio 并創建一個 C#控制臺應用程序項目。將其命名為 MongoDBConsoleApp。
圖 1:新的控制臺應用程序
步驟 2
安裝 MongoDB.NET 驅動程序。單機右鍵解決方案,進入“Manage NuGet Packages.”,
然后在搜索欄中,輸入“MongoDB”顯示出安裝包,進行安裝。詳見下圖:
圖 2:“Manage NuGet Packages”鏈接
圖 3:包管理器輸出
步驟 3
在 Program.cs 文件中添加以下命名空間,該名稱空間用于連接 MongoDB 和 CRUD 操作。
using MongoDB.Driver;
using MongoDB.Bson;
步驟 4
接下來,編寫代碼到 CRUD 操作。此示例中,將使用 BsonDocument 類對象將數據存儲在 MongoDB 數據庫中。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MongoDB.Driver;
using MongoDB.Bson;
namespace MongoDBConsoleApp
class Program
{ static void Main(string[] args)
{
try
{
MongoClient MongodbClient = new
MongoClient( mongodb://127.0.0.1:27017
// Get Database and Collection
IMongoDatabase Mongodb =
MongodbClient.GetDatabase( MyDatabase
var MongodbcollList =
Mongodb.ListCollections().ToList();
Console.WriteLine( The MongoDB list of collections
are :
foreach (var item in MongodbcollList)
{ Console.WriteLine(item);
}
var mydocument = Mongodb.GetCollection
BsonDocument ( mydocument
create(Mongodb, mydocument);
update(Mongodb, mydocument);
delete(Mongodb, mydocument);
var myresultDoc = mydocument.Find(new
BsonDocument()).ToList();
foreach (var myitem in myresultDoc)
{ Console.WriteLine(myitem.ToString());
}
}
catch (Exception ex)
{ Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
static void create(IMongoDatabase Mongodb, var mydocument)
{
BsonElement employeename = new BsonElement( employeename ,
Tapas Pal
BsonDocument empployee = new BsonDocument();
empployee.Add(employeename);
empployee.Add(new BsonElement( employeenumber , 123));
mydocument.InsertOne(empployee);
}
static void update(IMongoDatabase Mongodb, var mydocument)
{
// UPDATE
BsonElement updateemployee = new
BsonElement( employeename , Tapas1 Pal1
BsonDocument updateemployeedoc = new BsonDocument();
updateemployeedoc.Add(updateemployee);
updateemployeedoc.Add(new BsonElement( employeenumber ,
1234));
BsonDocument findemployeeDoc = new BsonDocument(new
BsonElement(employeename , Tapas Pal));
var updateDoc = mydocument.FindOneAndReplace
(findemployeeDoc, updateemployeedoc);
Console.WriteLine(updateDoc);
}
static void delete(IMongoDatabase Mongodb, var mydocument)
{
// DELETE
BsonDocument findAnotheremployee = new BsonDocument(new
BsonElement(employeename , Tapas1 Pal1));
mydocument.FindOneAndDelete(findAnotheremployee);
}
}
}
在前面的代碼方法中,作者檢索了當前的數據庫集合,然后創建了一個 BsonDocument 對象,用于存儲員工數據。
在 create 方法中,作者展示了如何創建一個 BsonElement 對象變量來存儲員工對象關鍵值,然后將該對象添加到 BsonDocument 中。
在 update 方法中,作者直接將對象作為參數傳遞,并且找到了員工名稱來更新詳細信息。
在 delete 方法中,作者刪除了之前創建的員工。
最后,顯示整個列表。
感謝你能夠認真閱讀完這篇文章,希望丸趣 TV 小編分享的“怎么在.NET 中使用 MongoDB 以及基本的 CRUD 操作”這篇文章對大家有幫助,同時也希望大家多多支持丸趣 TV,關注丸趣 TV 行業資訊頻道,更多相關知識等著你來學習!