- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用最新的 EF (6.1.1) 和引入 Compact 4.0 的 EF for SQL Server Compact (6.1.1)。目标是 Net 4.5.1
希望对我的 EF 进行编码,然后使用 StructureMap 将其拼凑起来。创建了一个 DbConfiguration 类:
public class MyConfiguration : DbConfiguration
{
SetDatabaseInitializer<MyContext>(new MyInitializer());
SetProviderServices(SqlCeProviderServices.ProviderInvariantName,
SqlCeProviderServices.Instance);
}
还有上下文:
public class MyContext : DbContext
{
public MyContext(String connection) : base(connection) {}
....
}
我用 XUnit 运行:
using (var ctx = new MyContext(String.Format("Data Source={0}", Path.Combine(databasePath, databaseName)))) {
ctx.Database.Initialize(true)
}
测试用例成功地创建(并通过初始化程序生成)我的 Compact 数据库。但是我不明白幕后发生了一堆隐含的事情。
例如,我不需要在我的 MyContext 类上有以下注释:
[DbConfigurationType(typeof(MyConfiguration))]
EF 必须足够聪明,可以看到我有一个扩展 DbConnection 的 MyConfiguration 类并使用它。或者?我也可以一起删除 MyConfiguration,测试用例仍会生成一个数据库(显然不是种子)。怎么办?
我希望能够使用代码将 DbConfiguration 分配给特定的 DbContext 而无需通过静态:
static MyContext()
{
DbConfiguration.set(new MyConfiguration());
}
原因是 StructureMap 也适用于不同的“配置文件”。有任何想法吗?
最佳答案
是和否在你的 web.config 中你应该有这样的部分
<contexts>
<context type="<DAL.MyContext, DAL">
<databaseInitializer type="DAL.MyConfiguration, DAL" />
</context>
</contexts>
DAL
将是您的 MyContext
和 MyConfiguration
所在的位置
[编辑]
要仅在代码中执行此操作,您必须使用静态方法 DbConfiguration.SetConfiguration(DbConfiguration configuration)
根据 here并且必须在使用上下文之前设置它。
关于c# - EF DBConfiguration 自动关联到 DBContext,无需注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25970551/
我试图先用代码用 Npgsql 配置 EntityFramework。 Entity Framework 6.1.3 Npgsql 3.0.5 现在,我想通过类来设置自定义配置,让我们看看: publ
拥有自己的 EF DbContext与我自己关联的派生类 DbConfiguration派生配置类: [DbConfigurationType(typeof(MyDbConfiguration))]
使用最新的 EF (6.1.1) 和引入 Compact 4.0 的 EF for SQL Server Compact (6.1.1)。目标是 Net 4.5.1 希望对我的 EF 进行编码,然后使
在我的 MVC4 应用程序中,我引用了我的 EF 模型程序集。一切正常。突然之间,我开始收到以下错误消息。 The default DbConfiguration instance was used
public class EntityFrameworkConfiguration : DbConfiguration { public EntityFrameworkConf
我想启用 SQL 日志记录 显式 来自单个集成测试,无需更改 DbContext 定义 我有: 10+ 多个 DbContexts 的项目。 10 多个测试项目。许多其他集成测试也使用 EF 我尝试过
尝试首先将 EF 6 代码与 WCF 服务结合使用,但遇到以下运行时错误: The default DbConfiguration instance was used by the Entity Fr
我正在尝试添加 EF7 的 MySQL Connector/Net 提供程序:使用以下方法之一。但是 System.Data.Entity 在 EF7 中没有类 DbConfiguration。这个类
有什么方法可以在 .net 核心中使用 DbConfiguration?例如: public class DbConfig : DbConfiguration { public DbConfi
我有一个解决方案,其中我们有两个 DbContext,我们正在从 EF4 迁移到 EF6。旧的 DbContext 是代码优先的,我们主要使用较新的生成的 db-first,但由于外部依赖性,两者都需
我是一名优秀的程序员,十分优秀!