我正在使用实体框架在dotnet核心中创建一个webapi应用程序。当我浏览文档时。我可以使用DI在dotnet核心中注入dbcontext对象。但是,当我使用一个dbcontext对象执行整个应用程序时。如何使dbcontext成为瞬态?如果有任何例子,它将真的帮助我。
请在下面找到我现有的代码。
这是我在ConfigureService中编写的代码
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<DataAccess.XXXXContext>(options => options.UseMySQL(Configuration["ConnectionStrings:DefaultConnection"]),ServiceLifetime.Transient);
}
这是我在DBcontext类中编写的代码
public partial class XXXXContext : DbContext
{
private readonly Logger logger = LogManager.GetCurrentClassLogger();
public XXXXContext(DbContextOptions<XXXXContext> options) :base(options)
{
logger.Debug("XXXXContext created");
}
}
如果你看到我已经在AddDbContext方法中编写了Transient,那么每次创建对象都是如此。我的构造函数应该调用。但我只打了一次电话。
答案 0 :(得分:0)
我已经使用单独的声明完成了这项工作。
${__javaScript(Math.random().toString(36).toUpperCase().substring(16))}