ASP.NET Core3.0(二)----使用EF连接数据库
程序员文章站
2024-03-14 10:14:04
...
一、新建项目文件
二、配置连接字符串
在appsettings.json文件中,修改代码:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"DBSetting": {
"connectionString": "server=.;database=TestEF;UID=sa;pwd=root"
},
"AllowedHosts": "*"
}
三、编写实体类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EFCoreTEST.Models
{
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
}
}
四、编写上下文类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;//需要使用NuGet安装
using Microsoft.Extensions.Configuration;
using System.IO;
namespace EFCoreTEST.Models
{
public class EFDBContext:DbContext
{
public DbSet<Product> products { get; set; }
public EFDBContext()
{
//如果要访问的数据库存在,则不做操作,如果不存在,会自动创建所有数据表和模式
Database.EnsureCreated();
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
//上下文重写此方法,以配置要使用的数据库。对上下文的每个实例调用此方法创建
IConfiguration congifuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json").Build();
string connectionString = congifuration["DBSetting:connectionString"];
optionsBuilder.UseSqlServer(connectionString);
base.OnConfiguring(optionsBuilder);
}
}
}
五、测试运行
在工程文件自带的文件中index.cshtml.cs编写代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
using EFCoreTEST.Models;
namespace EFCoreTEST.Pages
{
public class IndexModel : PageModel
{
private readonly ILogger<IndexModel> _logger;
public IndexModel(ILogger<IndexModel> logger)
{
_logger = logger;
}
public void OnGet()
{
var db = new EFDBContext();
db.products.Add(new Product
{
//此时是程序帮我创建的数据库,所以默认ID是自增长的唯一主键,此处不能写ID,否则导致插入异常
Name="黎明"
});
db.SaveChanges();
}
}
}
上一篇: Mysql慢查询调优记录
下一篇: 多行文字垂直居中
推荐阅读
-
ASP.NET Core3.0(二)----使用EF连接数据库
-
Python的ORM框架SQLAlchemy使用入门(二)【连接MySql数据库】
-
ASP.NET Core 中使用EF Core 将实体映射到数据库表的方法(SQL Server)
-
asp.net使用LINQ to SQL连接数据库及SQL操作语句用法分析
-
C#使用EF连接PGSql数据库的完整步骤
-
asp.net使用LINQ to SQL连接数据库及SQL操作语句用法分析
-
C#使用EF连接PGSql数据库的完整步骤
-
使用EF CodeFirst连接MySql数据库
-
ASP.NET Core使用EF Core操作MySql数据库
-
Asp.net MVC4 使用EF实现数据库的增删改查