在实体框架代码优先中,为啥我不能在连接字符串中使用 SQL Server Express?
Posted
技术标签:
【中文标题】在实体框架代码优先中,为啥我不能在连接字符串中使用 SQL Server Express?【英文标题】:In Entity Framework code-first, why can't I use SQL Server Express in the connection string?在实体框架代码优先中,为什么我不能在连接字符串中使用 SQL Server Express? 【发布时间】:2014-08-24 23:46:18 【问题描述】:我正在使用代码优先方法构建我的第一个 ASP.NET MVC 应用程序。
当我从以下位置更改默认连接字符串的“数据源”时:
Data Source=(LocalDb)\v11.0
到
Data Source=.\Sqlexpress
我遇到了一个错误,包含以下内容:
存在同名数据库,或指定文件无法打开,或位于 UNC 共享上。
当我恢复对“数据源”所做的更改时,它起作用了。
为什么会这样?我必须一直使用这个数据源吗?
【问题讨论】:
你的完整连接字符串是什么? 停止附加文件,使用类似:“Data Source=.\SqlExpress;Initial Catalog=DBName;Integrated Security=True;MultipleActiveResultSets=True”。否则请阅读此post 【参考方案1】:尝试删除本地数据库并让代码先创建它。该消息非常明确,您必须指示 EF 创建IfNotExists。
【讨论】:
问题不是每次都创建数据库,而是我必须在数据源中使用 '(LocalDb)\v11.0' 而不是使用我想要的(例如 .\SqlExpress) 尝试删除本地db,让代码先创建。 然后看这个:***.com/questions/15318843/…以上是关于在实体框架代码优先中,为啥我不能在连接字符串中使用 SQL Server Express?的主要内容,如果未能解决你的问题,请参考以下文章