关于EF实体框架中的 dbContext

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于EF实体框架中的 dbContext相关的知识,希望对你有一定的参考价值。

EF4.1包括Code First和DbContext API。DbContext API为EF提供更多的工作方式:Code First,Database First和Model First。

使用DbContext构造函数

1. Code First约定连接

namespace Magic.Unicorn
{
    public class UnicornsContext : DbContext
    {
        public UnicornsContext()
        // C# will call base class parameterless constructor by default
        {
        }
    }
}

用Magic.Unicorn.UnicornsContext作为数据库名,在本机上生成该数据库的连接字符串(SQL Express)。

 

2. Code First指定数据库名称的约定连接

 

public class UnicornsContext : DbContext
{
    public UnicornsContext()
        : base("UnicornsDatabase")
    {
    }
}

 

用UnicornsDatabase作为数据库名,在本机上生成该数据库的连接字符串(SQL Express)。

 

 

3. Code First用配置文件中的连接字符串

<connectionStrings>
    <add name="UnicornsCEDatabase"
         providerName="System.Data.SqlServerCe.4.0"
         connectionString="Data Source=Unicorns.sdf"/>
  </connectionStrings>

public class UnicornsContext : DbContext
{
    public UnicornsContext()
        : base("name=UnicornsCEDatabase")
    {
    }
}

 

4. Database/Model First用配置文件中的连接字符

 

<add name="Northwind_Entities" 
   connectionString="
      metadata=res://*/Northwind.csdl| 
               res://*/Northwind.ssdl| 
               res://*/Northwind.msl; 
      provider=System.Data.SqlClient; 
      provider connection string= 
         &quot;Data Source=.\sqlexpress; 
               Initial Catalog=Northwind; 
               Integrated Security=True; 
               MultipleActiveResultSets=True&quot;" 
providerName="System.Data.EntityClient"/> 

 

public class NorthwindContext : DbContext
{
    public NorthwindContext()
        : base("name=Northwind_Entities")
    {
    }
}

以上是关于关于EF实体框架中的 dbContext的主要内容,如果未能解决你的问题,请参考以下文章

EF 6.X 中的实体框架代码优先 Fluent API 默认值

带有实体框架 4 的 LLBLGen Pro?

EF框架学习---EF中的在线和离线场景

EF框架学习---EF中的在线场景保存数据

EF:使用typeid映射实体框架层次结构

TeamCity 中的 EF6 和 MSTest:实体框架提供程序必须从此类继承,并且“实例”成员必须返回单例实例