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

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

.net中怎么連接MongoDB

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān).net 中怎么連接MongoDB,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比鎮(zhèn)平網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式鎮(zhèn)平網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鎮(zhèn)平地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

連接MongoDB首先要通過Nuget添加一個(gè)MongoDB的包,下載此包

.net 中怎么連接MongoDB

.net 中怎么連接MongoDB

安裝完畢后開始寫代碼了,創(chuàng)建一個(gè)省份實(shí)體,一個(gè)學(xué)校實(shí)體

using MongoDB.Bson.Serialization.Attributes;

using System.Collections.Generic;

namespace MongoCore.Models

{

    public class Province

    {

        [BsonId]

        public int ProvinceID { get; set; }

        public string ProvinceName { get; set; }

        ///

        /// 省份里有多個(gè)學(xué)校  這里用集合保存

        ///

        public IList SchoolName { get; set; }

    }

}

namespace MongoCore.Models

{

        //用于后面添加學(xué)校

        public School(string schoolName, string years)

        {

            SchoolName = schoolName;

            Years = years;

        }

    public class School

    {

        public string SchoolName { get; set; }

        public string Years { get; set; }

    }

}

創(chuàng)建上下文類,連接MongoDB

namespace MongoCore.Models

{

    public class ProvinceContext

    {

        //定義數(shù)據(jù)庫(kù)

        private readonly IMongoDatabase _database = null;

        public ProvinceContext()

        {

            //連接服務(wù)器名稱  mongo的默認(rèn)端口27017

            var client = new MongoClient("mongodb://.......:27017");

            if (client != null)

                //連接數(shù)據(jù)庫(kù)

                _database = client.GetDatabase("數(shù)據(jù)庫(kù)名");

        }

        public IMongoCollection Province

        {

            get

            {

                return _database.GetCollection("Province");

            }

        }

    }

}

創(chuàng)建控制器

private readonly ProvinceContext _context = new ProvinceContext();      

public async Task Index() {          
  var list = await _context.Province.Find(_ => true).ToListAsync();            return View(list); }

視圖

@model List

@{

    ViewData["Title"] = "Index";

}

Index

Index

   

       

       

       

   

    @foreach (var item in Model)

    {

       

           

           

           

       

    }

省份ID省份名稱操作

                @Html.DisplayFor(modelItem => item.ProvinceID)

           

                @Html.DisplayFor(modelItem => item.ProvinceName)

           

                新 增  

                詳 情  

                刪 除  

           

運(yùn)行的時(shí)候修改配置在Startup.cs里

.net 中怎么連接MongoDB

運(yùn)行效果是這樣的,現(xiàn)在還沒有數(shù)據(jù),

.net 中怎么連接MongoDB

點(diǎn)擊新建按鈕添加省份,這里我添加了湖北省

.net 中怎么連接MongoDB

添加省份代碼如下:后端

public IActionResult Create()

        {

            return View();

        }

        [HttpPost]

        [ValidateAntiForgeryToken]

        public async Task Create(Province item)

        {

            try

            {

                //初始化學(xué)校類型數(shù)據(jù)

                item.SchoolName = new List();

                await _context.Province.InsertOneAsync(item);

                return RedirectToAction(nameof(Index));

            }

            catch

            {

                return View();

            }

        }

視圖:

@model MongoCore.Models.Province

@{

    ViewData["Title"] = "Create";

}

Create

   

       

           

           

               

               

           

           

               

               

           

           

               

           

       

   

接下來就是添加省份下面的學(xué)校了

public async Task Insert(int ProvinceID)

        {

            var num = await _context.Province.Find(p => p.ProvinceID == ProvinceID).SingleOrDefaultAsync();

            return View(num);

        }

        [HttpPost]

        [ValidateAntiForgeryToken]

        public async Task Insert(int ProvinceID, string Years, string SchoolName)

        {

            var item = await _context.Province.Find(p => p.ProvinceID == ProvinceID).SingleOrDefaultAsync();

            School sl = new School(SchoolName,Years);

            //添加學(xué)校

            item.SchoolName.Add(sl);

            //更新

            ReplaceOneResult actionResult

               = await _context.Province

                               .ReplaceOneAsync(n => n.ProvinceID.Equals(ProvinceID)

                                       , item

                                       , new UpdateOptions { IsUpsert = true });

            return RedirectToAction(nameof(Index));

        }

視圖:

@model MongoCore.Models.Province

@{

    ViewData["Title"] = "Insert";

}

新增

   

       

           

           

           

               

               

           

           

               

               

           

           

               

           

       

   

然后添加學(xué)校,我添加了兩所學(xué)校,在MongoDB里可以看到數(shù)據(jù)

.net 中怎么連接MongoDB

上述就是小編為大家分享的.net 中怎么連接MongoDB了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


本文題目:.net中怎么連接MongoDB
文章來源:http://weahome.cn/article/pjcigp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部