我首先使用EF和代码很好地工作,直到我更改配置类以添加一些额外的种子数据,然后尝试
Update-Database
现在我每次都会收到以下错误。
指定'-Verbose'标志以查看应用于目标数据库的SQL语句。 System.Data.SqlClient.SqlException (0x80131904):发生与网络相关或特定于实例的错误 同时建立与SQL Server的连接。服务器不是 发现或无法访问。验证实例名称是否正确 并且SQL Server配置为允许远程连接。 (提供程序:SQL网络接口,错误:26 - 错误定位 指定的服务器/实例)
我可以在sql对象资源管理器中连接和查看数据库,甚至可以查看表和数据。我不知所措,即将首先放弃代码,然后很快转到db或甚至存储过程。
我的连接字符串如下所示
<add name="MyDbContext" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\MyDbContext.mdf;Initial Catalog=MyDb;Integrated Security=True" providerName="System.Data.SqlClient" />
答案 0 :(得分:1)
该死的,我将项目设置为启动项目,然后运行命令,看起来它现在全部工作了! GRRRR。我假设从默认项目中选择项目:选择下拉列表执行此操作但显然不是。
答案 1 :(得分:1)
您可以通过ConnectionString参数指定连接字符串:
Update-Database -ConnectionString "data source=server_name;initial catalog=db_name;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" -ConnectionProviderName "System.Data.SqlClient" -Verbose
此外,您需要将此参数与Add-Migration命令使用相同的值:
Add-Migration Version_Name -ConnectionString "data source=server_name;initial catalog=db_name;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" -ConnectionProviderName "System.Data.SqlClient" -Verbose