介绍
在本文中,我们将学习如何使用ASP.NET CORE去实现MongoDB的CRUD操作。MongoDB是一个NO SQL的数据库。与SQLServer相比,它的优势在于可伸缩性和灵活性,然而,这些并不是数据库MongoDB所具有的唯一可取之处。
步骤1
首先,我们将使用Nuget命令在Visual Studio中添加mongodb数据库
Install-Package MongoDB.Driver -Version 2.11.6
步骤2
登录mongodb
https://www.mongodb.com/
登录后创建集群,如果已经创建了一个集群,则不要创建集群
创建集群后,单击Connect
单击连接后,单击连接应用程序
之后,您将找到连接字符串。
选择驱动器C#.NET,对于版本,我使用的是2.11.6,所以选择2.11或更高版本。
第3步
现在我们来到visualstudio。创建ASP.NET Core Web应用
第4步
创建项目后,转到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。本文让您基本了解如何将MongoDB与ASP.NET Core应用程序。