连接字符串 EF 代码优先
Posted
技术标签:
【中文标题】连接字符串 EF 代码优先【英文标题】:Connection string EF Code First 【发布时间】:2013-08-15 20:50:03 【问题描述】:我首先使用实体框架代码启动了一个应用程序。 在我的 Web.config 中,我添加了连接字符串:
<add name="MyContext" connectionString="Data Source=server\mssqlserver2008;Initial Catalog=dbname;persist security info=True; Integrated Security=SSPI" providerName="System.Data.SqlClient" />
当我尝试访问我的 Controller 时收到错误消息:数据库“master”中的 CREATE DATABASE 权限被拒绝
所以,我调试了代码,发现我的上下文中的属性“ConnectionString”与我的 Web.config 不同:
Data Source=.\\SQLEXPRESS;Initial Catalog=MyProject.Models.MyContext;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFrameworkMUE
为什么 ConnectionString 错了??
【问题讨论】:
看看CREATE DATABASE permission denied问题 【参考方案1】:在你的 EF 初始化代码中,确保你像这样指定连接字符串名称
public class MyDbContext : DbContext
public MyDbContext() : base("MyContext")
【讨论】:
以上是关于连接字符串 EF 代码优先的主要内容,如果未能解决你的问题,请参考以下文章
实体框架代码的动态连接字符串首先在运行时 EF6(mssql、mysql、oracle)中用于多个数据库提供程序
由EF代码优先决定SQL Azure数据库版本和大小的因素?