在.Net Core中使用MongoDB

作者 : 慕源网 本文共2149个字,预计阅读时间需要6分钟 发布时间: 2021-11-25 共518人阅读

介绍

在本文中,我们将学习如何使用 ASP.NET CORE 对 MongoDB 进行 CRUD 操作。MongoDB 是一个 NO SQL 数据库。与 SQL-Server 相比的优势在于可扩展性、敏捷性,然而,这些并不是 MongoDB 数据库拥有的唯一可取之处。 

现在我们将开始。

第1步

首先,我们将使用 Nuget 命令在 Visual Studio 中添加 Mongo DB 库

Install-Package MongoDB.Driver -Version 2.11.6

第2步 

登录mongodb

https://www.mongodb.com/

登录后创建集群,如果已经创建就不用了 

创建集群后,点击连接 

单击“连接”后,单击“连接您的应用程序” 

之后,您将找到连接字符串。

选择驱动器,C#.NET,对于版本,我使用的是2.11.6,所以选择2.11或更高版本。

第 3 步

现在我们来到 Visual Studio。创建 ASP.NET Core Web 应用

第四步

创建项目后,转到 appsettings.json 并设置连接字符串。

{  
    "MyKey": "mongodb+srv://ajay:<Password>@cluster0.qmqmt.mongodb.net/<Databasename>?retryWrites=true&w=majority",  
    "Logging": {  
        "LogLevel": {  
            "Default": "Information",  
            "Microsoft": "Warning",  
            "Microsoft.Hosting.Lifetime": "Information"  
        }  
    },  
    "AllowedHosts": "*"  
} 

在上面的MYKEY中,您需要输入您的信息并更改密码和数据库。

注意
如果数据库已经创建,那么它正在工作,但如果数据库没有创建,那么它会自动创建。

第 5 步

现在我们来到控制器: 

public HomeController(IConfiguration Configuration) {  
    Client = new MongoClient(Configuration["MyKey"]);  
    DB = Client.GetDatabase("Your Database");  
}  

您可以设置您的数据库名称,即连接字符串。

第 6 步

现在你创建一个类:

public class CarModel {  
    public ObjectId Id {  
        get;  
        set;  
    }  
    public string Empname {  
        get;  
        set;  
    }  
    public string Empemail {  
        get;  
        set;  
    }  
    public string Phoneno {  
        get;  
        set;  
    }  
    public string state {  
        get;  
        set;  
    }  
} 
在上面的类中,ObjectId是自动创建的Bson ID 
using MongoDB.Bson;  
第 7 步 – 插入数据
[HttpPost]  
public IActionResult Index(CarModel model) {  
    var collection = DB.GetCollection < CarModel > ("EmployeeDetails");  
    collection.InsertOne(model);  
    return View();  
} 

第 8 步 – 编辑和更新数据

编辑

public ActionResult Edit(string id) {  
    if (ModelState.IsValid) {  
        var collection = DB.GetCollection < CarModel > ("EmployeeDetails").Find(Builders < CarModel > .Filter.Eq("Id", ObjectId.Parse(id))).SingleOrDefault();  
        return View(collection);  
    }  
    return View();  
} 
更新
[HttpPost]  
public ActionResult Edit(CarModel model, string Id) {  
    var collection = DB.GetCollection < CarModel > ("EmployeeDetails");  
    var update = collection.FindOneAndUpdateAsync(Builders < CarModel > .Filter.Eq("Id", ObjectId.Parse(Id)), Builders < CarModel > .Update.Set("Empname", model.Empname).Set("Empemail", model.Empemail));  
    return RedirectToAction("About");  
}  

在上面的编辑中,您将在 ID 参数中传入您的当前 ID。

步骤 9

显示数据

public ActionResult Show() {  
    var collection = DB.GetCollection < CarModel > ("EmployeeDetails").Find(new BsonDocument()).ToList();  
    return View(collection);  
}

现在我们运行项目。

总结

在本文中,我们了解了使用 ASP.NET Core 和 MongoDB 的 Crud 操作。本文让您对我们如何将 MongoDB 与 ASP.NET Core 应用程序一起使用有一个基本的了解。


慕源网 » 在.Net Core中使用MongoDB

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录