在启动时,Code-first EF数据库未自动生成
在启动时,Code-first EF数据库未自动生成
我有一个新的ASP.NET网络应用程序,我称之为“Smartifyer”,一开始是空的。我使用Nuget添加了EntityFramework,并创建了一个名为WordModel
的模型和以下上下文:
public class SmartifyerContext : DbContext { public SmartifyerContext() : base("SmartifyerDatabase") { } public DbSetWords { get; set; } }
在根目录的Web.config
中,我有以下配置:
当对上下文进行测试时,Find
方法大约需要30秒,然后超时,并显示以下错误:
System.Data.SqlClient.SqlException:在建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问。请验证实例名称是否正确,并验证SQL Server是否配置为允许远程连接。(提供程序:SQL Network Interfaces,错误:26 - 无法定位服务器/指定的实例)
我对设置SQL连接和Web.config
中的所有配置的理解很差。我希望如果不存在,则自动生成.mdf数据库文件,但我不知道如何修改我的配置来实现这一点。
解决方案编辑:
我的连接配置和数据库设置都是正确的。我的问题是我正在运行一个使用测试项目的app.config
文件的单元测试,而不是主项目的web.config
。将我的web.config
复制粘贴到测试项目的app.config
中解决了这个问题!