And*_*oes 12 c# ef-code-first entity-framework-4.1
我正在尝试将Code First与我的本地Sql Server 2008 R2实例一起使用.我创建了一个用户'dev',可以使用Sql Managment Studio登录并创建数据库.问题是我在EntityFramework中尝试使用DbContext创建数据库时不断收到错误消息.这是错误消息:
"建立与SQL Server的连接时发生与网络相关或特定于实例的错误.未找到服务器或无法访问服务器.验证实例名称是否正确以及SQL Server是否配置为允许远程连接.SQL网络接口,错误:26 - 找到指定的服务器/实例时出错"
错误消息我检查了我的Sql Server,它确实允许远程连接.
我用以下代码抽象了我的系统并得到了同样的错误:
namespace CodeFirstConsole
{
public class Program
{
static void Main(string[] args)
{
var db = new MyContext();
try { Console.WriteLine(db.Parents.Count()); }
catch (Exception) { throw; }
Console.Read();
}
}
internal class MyContext : DbContext
{
public DbSet<ParentObject> Parents { get; set; }
public DbSet<ChildObject> Children { get; set; }
public MyContext()
{
this.Database.Connection.ConnectionString =
"Data Source=.;Database=ConsoleTest;Initial Catalog=ConsoleTest;User ID=dev;Password=dev;";
}
}
internal class ParentObject
{
public int Id { get; set; }
public string PropertyOne { get; set; }
}
internal class ChildObject
{
public int Id { get; set; }
public bool PropertyOne { get; set; }
public string PropertyTwo { get; set; }
public virtual ParentObject Parent { get; set; }
}
internal class MyInitializer : DropCreateDatabaseAlways<MyContext>
{
protected override void Seed(MyContext context)
{
context.Parents.Add(new ParentObject() { PropertyOne = "hi" });
base.Seed(context);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Chr*_*len 25
我有同样的错误,让我坚持了大约一天.我的情况是我有一个预先存在的启动项目的大型解决方案,我正在为持久性项目添加EF.
所以第一步是添加EF依赖项.这在我的持久性项目中创建了一个具有正确EF内容的app.config.然后我去了Enable-Migrations并在这篇文章中得到了同样的错误.此时我没想到将EF app.config设置复制到启动项目的app.config,因为我认为在最终运行应用程序之前我必须使用它.
当我将解决方案启动项目更改为持久性项目时,问题得以解决,因此我可以让EF找到正确的app.config.或者我可以将EntityFramwework相关部分复制到启动项目的app.config中.
| 归档时间: |
|
| 查看次数: |
6439 次 |
| 最近记录: |