欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

.net中怎么連接MongoDB

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

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

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

.net 中怎么連接MongoDB

.net 中怎么連接MongoDB

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

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; }

        /// <summary>

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

        /// </summary>

        public IList<School> 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ù)庫

        private readonly IMongoDatabase _database = null;

        public ProvinceContext()

        {

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

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

            if (client != null)

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

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

        }

        public IMongoCollection<Province> Province

        {

            get

            {

                return _database.GetCollection<Province>("Province");

            }

        }

    }

}

創(chuàng)建控制器

private readonly ProvinceContext _context = new ProvinceContext();      

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

視圖

@model List<MongoCore.Models.Province>

@{

    ViewData["Title"] = "Index";

}

<h3>Index</h3>

<h3>Index</h3>

<a asp-action="Create"><input type="button" value="新 建" class="btn btn-default" /></a>

<table class="table">

    <tr>

        <th>省份ID</th>

        <th>省份名稱</th>

        <th>操作</th>

    </tr>

    @foreach (var item in Model)

    {

        <tr>

            <td>

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

            </td>

            <td>

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

            </td>

            <td>

                <a asp-action="Insert" asp-route-ProvinceID="@item.ProvinceID">新 增</a>&nbsp;&nbsp;

                <a asp-action="Detail" asp-route-ProvinceID="@item.ProvinceID">詳 情</a>&nbsp;&nbsp;

                <a asp-action="Delete" asp-route-ProvinceID="@item.ProvinceID">刪 除</a>&nbsp;&nbsp;

            </td>

        </tr>

    }

</table>

運(yùn)行的時候修改配置在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<ActionResult> Create(Province item)

        {

            try

            {

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

                item.SchoolName = new List<School>();

                await _context.Province.InsertOneAsync(item);

                return RedirectToAction(nameof(Index));

            }

            catch

            {

                return View();

            }

        }

視圖:

@model MongoCore.Models.Province

@{

    ViewData["Title"] = "Create";

}

<h3>Create</h3>

<div class="row">

    <div class="col-md-4">

        <form asp-action="Create">

            <div asp-validation-summary="ModelOnly" class="text-danger"></div>

            <div class="form-group">

                <label class="control-label">省份ID</label>

                <input asp-for="ProvinceID" class="form-control" />

            </div>

            <div class="form-group">

                <label class="control-label">省份名稱</label>

                <input asp-for="ProvinceName" class="form-control" />

            </div>

            <div class="form-group">

                <input type="submit" value="保 存" class="btn btn-default" />

            </div>

        </form>

    </div>

</div>

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

public async Task<IActionResult> Insert(int ProvinceID)

        {

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

            return View(num);

        }

        [HttpPost]

        [ValidateAntiForgeryToken]

        public async Task<IActionResult> 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";

}

<h3>新增</h3>

<div class="row">

    <div class="col-md-4">

        <form asp-action="Insert">

            <div asp-validation-summary="ModelOnly" class="text-danger"></div>

            <input type="hidden" asp-for="ProvinceID" />

            <div class="form-group">

                <label class="control-label">學(xué)校名稱</label>

                <input name="SchoolName" class="form-control" />

            </div>

            <div class="form-group">

                <label class="control-label">成立年份</label>

                <input name="Years" class="form-control" />

            </div>

            <div class="form-group">

                <input type="submit" value="保 存" class="btn btn-default" />

            </div>

        </form>

    </div>

</div>

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

.net 中怎么連接MongoDB

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

分享文章:.net中怎么連接MongoDB
本文來源:http://www.aaarwkj.com/article18/pjcigp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、做網(wǎng)站、網(wǎng)站設(shè)計公司、網(wǎng)站排名、微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
极品女神福利视频久久| 欧美日韩亚洲精品瑜伽裤| 中字幕人妻一区二区三区| 国产精品五月婷婷六月丁香| 91观看免费完整版高清| 熟女人妻av五十路六十路| 日韩av天堂免费网站| 日本新任女教师在线播放| 97资源在线中文一区| 午夜未满十八禁止观看| 人妻少妇精品视频二区| 久久久人妻精品一区二区三区四区| 蜜桃传媒18传媒在线| 新人妻一区二区在线视频| 国产成人综合亚洲一区| 精品久久精品久久人妻九色| 亚洲码欧洲码一二三区| 91日本视频在线播放| 久久99久久精品视频国产| 国产一区二区三区在线观看俏佳人 | 成人午夜激情福利动态| 国产成年人免费小视频| 日韩网激情视频在线观看| 国产精品久久中文字幕网| 密臀av一区二区三区| 精品蜜桃臀91人少妇| 国产一区二区三区不卡av| 欧美三级亚洲三级日韩三级| 久久裸体国语精品国产91| 男人天堂av网在线观看| 六月丁香花五月婷婷| 69国产精品久久久久久人| 日韩中文字幕在线二区| 熟女一区二区蜜桃视频| 最近免费欧美一级黄片| 中文有码人妻字幕在线| 国产精品一区在线播放| 激情久久五月激情婷婷| 国产精品一区二区三区专区| 91九色最新国产在线| 日本高清一区二区网站|