我有一个带有完整性测试的ASP.NET MVC项目。在测试app.config中我有一个
<connectionStrings>
<add name="localhost" connectionString="server=.\SQLEXPRESS;database=repaem;
Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
</connectionStrings>
我在Sequelizer MSSQL配置中创建了Connectionstring别名“localhost”。但是当我部署时,测试失败,消息“System.Data.SqlClient.SqlException:无法打开数据库”修复“登录请求。登录失败。”可能连接字符串保持不变......
我已尝试手动创建ConnectionFactory,如http://support.appharbor.com/kb/add-ons/using-sequelizer中所述。
var uriString = ConfigurationManager.AppSettings["SQLSERVER_URI"];
var uri = new Uri(uriString);
SqlConnectionFactory factory = new SqlConnectionFactory(uri.Host, uri.AbsolutePath.Trim('/'), uri.UserInfo.Split(':').First(), uri.UserInfo.Split(':').Last());
Bind<IDatabase>().To<Database>().InSingletonScope().WithConstructorArgument("factory", factory);
但ConfigurationManager.AppSettings [“SQLSERVER_URI”]为空。
答案 0 :(得分:1)
您是否在执行单元测试时尝试使用数据库?如果不支持,则仅在部署代码后才插入connectionstring。
以下是一些其他资源: