前几天,打算将 VS 2013 Express 升级成 VS 2013 Community。
升级完成后,发现安装完成时调用数据库竟然出现了 SQL Network Interfaces, error: 50 - Local Database Runtime error occurred. Cannot create an automatic instance 的问题,想了非常非常久,最后在放平心态准备放弃的时候解决了问题。
就打算记录一下到底在我身上发生了什么事,按时间顺序采用了以下几种方法:
- 利用完全删除工具 将 VS 删除再重新安装,大概约等于修理电脑出错的“重启试试”;
- 删除 SQL Server(如果使用 SQL Server 的话),而且要注意 SQL Server 和 VS 版本之间的对应;
- 在命令行中添加相应版本 LocalDB 的数据库实例,解决没有 LocalDB 的实例存在问题;
- 在 app.config/Web.config 中添加数据库的连接字符串,解决没有连接实例的问题;
<connectionStrings >
<add name="EFDbContext"
providerName="System.Data.SqlClient"
connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=SportsStore;Integrated Security=SSPI;AttachDBFilename=E:\SportsStore.mdf" />
</connectionStrings>
其实,在出现问题之前,没有设置 connectionString 也可以运行没有出错,但出现了其它错误,所以无脑重装了好几次,因为完全没有去想这方面出错,不然问题早就能找出来了。
可惜花了我两天的时间,其中第 3、4 两个方法是针对问题解决的方法,具体还可以参考 MS 上关于 EF 的文档(开始使用 Entity Framework)。
希望能够有所帮助。