在ASP.NET Core 2.1中,可以通过依赖注入来解决DbContext属性的问题。下面是一个代码示例:
首先,定义一个DbContext类,这里以名为AppDbContext的类为例:
public class AppDbContext : DbContext
{
public AppDbContext(DbContextOptions options) : base(options)
{
}
// 添加需要的DbSet属性
public DbSet Products { get; set; }
}
接下来,将DbContext注册到依赖注入容器中。在Startup类的ConfigureServices方法中添加以下代码:
public void ConfigureServices(IServiceCollection services)
{
// ...
// 添加数据库上下文
services.AddDbContext(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
// ...
}
在上面的代码中,AppDbContext被注册为一个服务,并且使用了默认的连接字符串。
最后,在需要使用DbContext的类中,可以通过构造函数注入的方式来获取DbContext实例,例如在控制器中:
public class HomeController : Controller
{
private readonly AppDbContext _dbContext;
public HomeController(AppDbContext dbContext)
{
_dbContext = dbContext;
}
// ...
}
通过上述的方式,你就可以在ASP.NET Core 2.1中使用DbContext属性了。