1、增加数据
public IActionResult Index() { Product product = new Product(); product.Name = "西瓜"; product.Price = 34; product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;SslMode=None"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { context.products.Add(product); context.SaveChanges(); } return View(); }解决一个中文字符串写入显示?的问题:
修改数据库字段的格式:生成库之后,更改数据库字符集为 gbk -- GBK Simplified Chinese,排序集为gbk_chinese_ci
更改连接字符串加入字符格式:
string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8";2、查询数据,查询字段值为某一特定值的所有行where
public IActionResult Index() { //Product product = new Product(); //product.Name = "商品1"; //product.Price = 34; //product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { //context.products.Add(product); //context.SaveChanges(); List<Product> pro = context.products.Where(m => m.Name == "商品1").ToList(); return View(pro); } }前端显示代码为
<table> <tr> <td>商品名称</td> <td>商品价格</td> <td>商品数量</td> </tr> @foreach (var item in Model) { <tr> <td>@item.Name</td> <td>@item.Price</td> <td>@item.Weight</td> </tr> } </table>2、查询语句,进行分页查询显示,skip和take
public IActionResult Read(int pageIndex,int pageSize) { string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { int skip = (pageIndex - 1) * pageSize; int take = pageSize; List<Product> pro = context.products.Skip(skip).Take(take).ToList(); return View(pro); } }3、查询语句,进行筛选出其中的某些字段,使用Select
4、查询某个字段的数量,GroupBy
public IActionResult Index() { //Product product = new Product(); //product.Name = "商品1"; //product.Price = 34; //product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { //context.products.Add(product); //context.SaveChanges(); //List<Product> pro = context.products.Where(m => m.Name == "商品1").ToList(); //var a = context.products.Select(m => new { m.Name,m.Price }).AsQueryable().ToList(); Dictionary<string,int> counts= context.products.GroupBy(m => m.Name).ToDictionary(m => m.Key, m => m.Count()); return View(counts); } }前端显示代码
@model Dictionary<string,int> @{ ViewData["Title"] = "Home Page"; } <div class="text-center"> <h1 class="display-4">Welcome</h1> <p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p> </div> <table> <tr> <td>名称</td> <td>数量</td> </tr> @foreach (var item in Model.Keys) { <tr> <td>@item</td> <td>@Model[item]</td> </tr> } </table>5、查询语句,排序升序OrderBy,降序OrderByDescending
public IActionResult Index() { //Product product = new Product(); //product.Name = "商品1"; //product.Price = 34; //product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { //context.products.Add(product); //context.SaveChanges(); //List<Product> pro = context.products.Where(m => m.Name == "商品1").ToList(); //var a = context.products.Select(m => new { m.Name,m.Price }).AsQueryable().ToList(); //Dictionary<string,int> counts= context.products.GroupBy(m => m.Name).ToDictionary(m => m.Key, m => m.Count()); //return View(context .products.OrderByDescending(m=>m.Price).ToList()); return View(context.products.OrderBy(m => m.Price).ToList()); } }前端显示代码
@{ ViewData["Title"] = "Home Page"; } <div class="text-center"> <h1 class="display-4">Welcome</h1> <p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p> </div> <table> <tr> <td>名称</td> <td>价格</td> <td>重量</td> </tr> @foreach (var item in @Model) { <tr> <td>@item.Name</td> <td>@item.Price</td> <td>@item.Weight</td> </tr> } </table>6、对象的更新操作
public IActionResult Index() { //Product product = new Product(); //product.Name = "商品1"; //product.Price = 34; //product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { //context.products.Add(product); //context.SaveChanges(); //List<Product> pro = context.products.Where(m => m.Name == "商品1").ToList(); //var a = context.products.Select(m => new { m.Name,m.Price }).AsQueryable().ToList(); //Dictionary<string,int> counts= context.products.GroupBy(m => m.Name).ToDictionary(m => m.Key, m => m.Count()); //return View(context .products.OrderByDescending(m=>m.Price).ToList()); List<Product> productss = context.products.ToList(); productss[0].Name = "修改后的值"; productss[0].Price = 30000; context.SaveChanges(); return View(context.products.OrderBy(m => m.Price).ToList()); }7、对象的删除操作
public IActionResult Index() { //Product product = new Product(); //product.Name = "商品1"; //product.Price = 34; //product.Weight = 98; string DefaultMySqlConnectionString = "server=localhost;userid=root;pwd=mj123;port=3306;database=test;Charset=utf8"; DbContextOptionsBuilder builder = new DbContextOptionsBuilder(); builder.UseMySQL(DefaultMySqlConnectionString); using (ApplicationDbContext context = new ApplicationDbContext(builder.Options)) { //context.products.Add(product); //context.SaveChanges(); //List<Product> pro = context.products.Where(m => m.Name == "商品1").ToList(); //var a = context.products.Select(m => new { m.Name,m.Price }).AsQueryable().ToList(); //Dictionary<string,int> counts= context.products.GroupBy(m => m.Name).ToDictionary(m => m.Key, m => m.Count()); //return View(context .products.OrderByDescending(m=>m.Price).ToList()); List<Product> productss = context.products.ToList(); productss[0].Name = "修改后的值"; productss[0].Price = 30000; //删除数据操作 context.products.Remove(productss[2]); //或根据某个字段的值删除某条数据 var pro = context.products.SingleOrDefault(m => m.Id == 19); context.products.Remove(pro); context.SaveChanges(); return View(context.products.OrderBy(m => m.Price).ToList()); }