草庐IT

dbContext

全部标签

c# - AutoFac/.NET Core - 注册 DBcontext

我有一个新的.NETCoreWebAPI项目,它具有以下项目结构:API->业务/领域->基础设施API非常精简,只有API方法。业务/领域层具有我所有的业务逻辑。最后,我的基础架构层具有使用EFCore2.0的数据库类。我知道使用.NETCore内置的依赖注入(inject),我可以将API项目的引用添加到基础设施项目,然后在StartUp.cs文件中添加以下代码:services.AddDbContext(options=>options.UseSqlServer(connectionString));但是,我想保持更传统的关注点分离。到目前为止,我已经在我的基础设施层中添加了一个

c# - dbcontext 不包含 'Refresh' 的定义

我首先使用实体​​框架代码,但遇到以下编译错误。dbcontext不包含“刷新”的定义。我见过很多使用Refresh方法的例子。但是,当我将Refresh方法添加到我的dbcontext时,出现编译错误。我正在使用以下命名空间。usingSystem.Data;usingSystem.Data.Entity;usingSystem.Data.Linq;我是不是漏了一个?我试图查找它,但没有找到命名空间。 最佳答案 DbContext确实没有Refresh()方法。您看到的示例可能使用了ObjectContext.Refresh().

c# - DbContext 不会保持连接打开以供重复使用

我正在尝试重用现有的数据库连接,以便我可以在不调用MSDTC的情况下使用TransactionScope执行多个数据库操作。EntityFramework(在4.1版本中使用新的DbContextAPI)似乎不想保持显式打开的连接打开。旧的ObjectContextAPI按预期保持连接打开并且documented.由于DbContextAPI仅在后台使用ObjectContext,因此我预计会有相同的行为。有谁知道此更改是有意为之还是已知问题?我在任何地方都找不到它的记录。publicvoidConnectionRemainsOpen(){using(varcontext=newTes

c# - dbcontext.Add 和 dbcontext.AddObject 之间有什么区别

我是WPF的初学者。我想知道dbcontext.Add和dbcontext.AddObject之间有什么区别。privatevoidAddButton_Click(objectsender,RoutedEventArgse){Nameemployee=newName();employee.Name1="Test";dataContext.Names.AddObject(employee);}我想实现这个dbcontext.AddObject()。但是我得到一个错误:'System.Data.Entity.DbSet'doesnotcontainadefinitionfor'AddObj

c# - DbContext 是一项昂贵的操作吗?

在C#MVCEF框架中,我看到了很多示例,它们只是在需要插入或查询时创建一个新的DbContext,然后关闭/释放它(许多使用“using”表示自动关闭/释放)。是否对此进行了一些搜索但找不到好的答案,但是创建DbContext是一种非常便宜且快速的操作吗?例如,考虑一个典型的MVC应用程序,在页面上它有许多“组件”,例如标题、侧边栏、主要内容等,并且在非平凡的设置中,每个组件都有自己的单独的逻辑和代码——我应该在每个组件中创建一个新的DbContext吗?(如果是,系统会自动缓存查询结果吗?——例如,一个常见的用例是,在这些组件中的每一个中,它需要查询数据库以获取当前站点范围的设置,

c# - 如何使用 EF 4.x DbContext 生成器获取属性更改通知

我正在使用EntityFramework4.3,因此我使用DbContextGenerator来创建上下文和实体类。使用默认的EF4代码生成器模板,实体类实现INotifyPropertyChanged,并在属性setter中添加Changing和Changed分部方法。当我使用EF4.xDbContext生成器时,如下图所示,实体类要轻得多,并且不包括任何跟踪属性更改的方法。这是一个例子://------------------------------------------------------------------------------////Thiscodewasgene

c# - 如何在 Entity Framework Core 中使用复数 DbSet 属性名称搭建 DbContext?

我在PackageManagerConsole中使用Scaffold-DbContext命令为现有的SQLServer数据库创建和重新创建上下文和实体:Scaffold-DbContext-providerEntityFramework.MicrosoftSqlServer-connection"myconnectionstring"除一件事外,它工作完美:DbSet的属性名称为单数形式:publicpartialclassMyDbContext:DbContext{publicvirtualDbSetRequest{get;set;}publicvirtualDbSetRequest

c# - 在 WebApi 中使用 Unity 解析每个请求的 dbcontext

我正在努力完成这项工作。我已经安装了Unity和Unity.AspNet.WebApi包(v3.5.1404)并且低于包附带的激活码publicstaticclassUnityWebApiActivator{///IntegratesUnitywhentheapplicationstarts.publicstaticvoidStart(){varcontainer=UnityConfig.GetConfiguredContainer();varresolver=newUnityHierarchicalDependencyResolver(container);GlobalConfigu

c# - 如何从 EF7 DbContext 获取 ConnectionString

我的场景:我将EF7用于标准CRUD操作,将Dapper用于需要提高速度的更复杂的查询。我从startup.cs将我的DbContext注入(inject)到我的DAL中,这显然会执行数据库查询。Dapper需要一个连接字符串。我想将我的EF7DbContext连接字符串注入(inject)Dapper查询。我的问题:如何像以前一样从DbContext获取连接字符串:DbContext.Database.Connection?它在EF7中从Database更改为DatabaseFacade类型,并且DbConnectionConnection也被删除。DbContext中肯定应该有一些

c# - 我需要在 OnModelCreating(DbModelBuilder modelBuilder) 函数中添加什么来定义 Person 和 Role 之间的关系?

我在WinForms项目.net4.5中使用EntityFramework5.0版。我已经为我创建了2个重要的实体publicclassRole{[Key][DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]publicintId{get;set;}publicstringName{get;set;}publicboolStockPermission{get;set;}publicboolItemPermission{get;set;}publicboolOrderPermission{get;set;}publi