2015-10-05 73 views
3

我想创建一个简单的数据库Code First Approcah EF 5.0。实体框架代码优先的方法获取错误:“底层提供商在打开失败”

我有Employee类:

public class Employee 
{ 
    public int EmployeeID { get; set; } 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
} 

我有EmployeeDbContext类:

public class EmployeeDbContext : DbContext 
{ 
    static EmployeeDbContext() 
    {    
     Database.SetInitializer<EmployeeDbContext>(null); 
    } 
    public DbSet<Employee> Employees { get; set; } 
} 

和存储库类:

public class Repository 
{ 
    public List<Employee> GetEmployees()   
    {    
     EmployeeDbContext MyDataBase = new EmployeeDbContext(); 
     return MyDataBase.Employees.ToList(); 
    } 
} 

我已经创建WebFrom文件,其内部一个GridView并将其与ObjectDataSource连接到存储库(屏幕截图):http://s3.postimg.org/jqvm89scz/Capture.png

这是我的ConnectionString:

<add name="EmployeeDbContext" connectionString="server=.; Database=Sample;Trusted_Connection=True; Persist Security Info=True;" providerName="System.Data.SqlClient" /> 

当我调试这个IM在得到这个错误 “回归MyDataBase.Employees.ToList();”

An exception of type 'System.Data.Entity.Core.EntityException' occurred in 
EntityFramework.SqlServer.dll but was not handled in user code 

Additional information: The underlying provider failed on Open. 

我已经试过这条线这MyDataBase.Database.Connection.Open();之前添加和得到这个错误:

Cannot open database "Sample" requested by the login. The login failed. 

UPDATE

当我改变在ConnectionString数据库到exisiting一个( Northwind数据库)的工作,我只是再次提到,即时通讯尝试创建一个不存在的数据库。

+0

您是否尝试使用您的connectionString连接到数据库?新的SqlConnection(@“数据源=。\ SQLEXPRESS; AttachDbFilename = | DataDirectory | \ MyDb2.mdf;集成安全性= True;用户实例= True”) – yonexbat

+0

抱歉不明白,我该怎么办? – Yaniv

+0

好吧,那个更新使所有的差异,从来没有测试 –

回答

0

看看这个。一些连接字符串样本列在此页面上。 https://www.connectionstrings.com/sql-server/

你可以在没有任何EF的东西的情况下在代码中测试你的连接字符串(这种情况不会引发异常)。

using (SqlConnection connection = new SqlConnection(@"your connection string")) 
{ 
    connection.Open(); 
} 
+0

我已经尝试了几乎所有的连接字符串组合 – Yaniv

+0

您可以使用vs连接到您的数据库并列出所有表。或与SQL管理工作室?我没有在连接字符串中看到任何用户或密码。 – yonexbat

+0

正如我在更新中说的,当我改变数据库存在一个它的工作,我看到北风数据库中的员工表没有用户和密码,我想要做的是创建一个新的数据库 – Yaniv

相关问题