真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在.NET中使用MongoDB以及基本的CRUD操作

這篇文章主要介紹了怎么在.NET中使用MongoDB以及基本的CRUD操作,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)若羌免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

MongoDB

NOSQL是一種面向文檔的數(shù)據(jù)庫(kù)系統(tǒng),以特定的格式儲(chǔ)存,如JSON。MongoDB是當(dāng)前NoSQ數(shù)據(jù)庫(kù)產(chǎn)品中最熱門的一種,它具高性能、易部署、易使用的特點(diǎn),以及豐富的輕量級(jí)二進(jìn)制格式。 MongoDB最大的特點(diǎn)是支持的查詢語(yǔ)言非常強(qiáng)大,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫(kù)單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引,是一個(gè)面向集合的,模式自由的文檔型數(shù)據(jù)庫(kù)。

本文將詳細(xì)介紹MongoDB的安裝、.NET應(yīng)用程序中的MongoDB(C#代碼)的使用以及演示基本的CRUD操作

MongoDB的優(yōu)點(diǎn)

  • 方便儲(chǔ)存大量結(jié)構(gòu)簡(jiǎn)單的數(shù)據(jù)

  •  速度快,適用于大而復(fù)雜的數(shù)據(jù)環(huán)境

  • 在云上有很高的靈活性和可用性

  • 很容易擴(kuò)展

  • 使用MongoDB的動(dòng)態(tài)模式,可以實(shí)現(xiàn)快速開發(fā)

MongoDB不會(huì)將數(shù)據(jù)保存在行中,所有數(shù)據(jù)都儲(chǔ)存在單個(gè)文檔中。從程序員的角度看,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 是一個(gè)免費(fèi)的開源數(shù)據(jù)庫(kù),你可以從特定的鏈接去下載。MongoDB還提供了一個(gè)很大的驅(qū)動(dòng)程序列表,方便不同編程語(yǔ)言與數(shù)據(jù)庫(kù)之間的通信。如果要與.NET一起使用,則需要從NuGet包安裝驅(qū)動(dòng)程序。NET驅(qū)動(dòng)程序包括MongoDB.Bson,MongoDB.Driver和MongoDB.Driver.Core。

.NET項(xiàng)目

現(xiàn)在,讓我們創(chuàng)建一個(gè).NET控制臺(tái)應(yīng)用程序來(lái)演示MongoDB上的CRUD操作。在運(yùn)行mongod.exe是要確保提示命令顯示一切正常,以便在執(zhí)行控制臺(tái)應(yīng)用程序時(shí)保持MongoDB服務(wù)器正常運(yùn)行。

步驟1

打開Visual Studio并創(chuàng)建一個(gè)C??刂婆_(tái)應(yīng)用程序項(xiàng)目。將其命名為MongoDBConsoleApp。

怎么在.NET中使用MongoDB以及基本的CRUD操作

圖1:新的控制臺(tái)應(yīng)用程序

步驟2

安裝MongoDB.NET驅(qū)動(dòng)程序。單機(jī)右鍵解決方案,進(jìn)入“Manage NuGet Packages.”, 然后在搜索欄中,輸入“MongoDB”顯示出安裝包,進(jìn)行安裝。詳見下圖:

怎么在.NET中使用MongoDB以及基本的CRUD操作

圖2:“Manage NuGet Packages”鏈接

怎么在.NET中使用MongoDB以及基本的CRUD操作

圖3:包管理器輸出

步驟3

在Program.cs文件中添加以下命名空間,該名稱空間用于連接MongoDB和CRUD操作。

using MongoDB.Driver;
using MongoDB.Bson;

步驟4

接下來(lái),編寫代碼到CRUD操作。此示例中,將使用BsonDocument類對(duì)象將數(shù)據(jù)存儲(chǔ)在MongoDB數(shù)據(jù)庫(kù)中。

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
               ("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);
      }
   }
}

在前面的代碼方法中,作者檢索了當(dāng)前的數(shù)據(jù)庫(kù)集合,然后創(chuàng)建了一個(gè)BsonDocument對(duì)象,用于存儲(chǔ)員工數(shù)據(jù)。

在create方法中,作者展示了如何創(chuàng)建一個(gè)BsonElement對(duì)象變量來(lái)存儲(chǔ)員工對(duì)象關(guān)鍵值,然后將該對(duì)象添加到BsonDocument中。

在update方法中,作者直接將對(duì)象作為參數(shù)傳遞,并且找到了員工名稱來(lái)更新詳細(xì)信息。

在 delete方法中,作者刪除了之前創(chuàng)建的員工。

最后,顯示整個(gè)列表。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“怎么在.NET中使用MongoDB以及基本的CRUD操作”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!


當(dāng)前標(biāo)題:怎么在.NET中使用MongoDB以及基本的CRUD操作
本文URL:http://weahome.cn/article/geisdh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部