我确实在客户现场遇到了一个相当奇怪的行为:
我的 ASP.NET 应用程序尝试使用 web.config 中指定的连接字符串连接到数据库。
这在所有情况下都可以正常工作,但有一种情况 - 由于安全权限,该特定客户需要打开集成安全性。奇怪的是,现在应用程序尝试连接到另一个数据库,而不是定义为“初始目录”的数据库。
我已经仔细检查了连接字符串是否有任何拼写错误。
查询中没有 USE 语句。基本上没有其他东西告诉应用程序连接到哪里,除了这个连接字符串。
如果相关 - 它正在使用 EntityClient 提供程序。
连接字符串(当然有些部分改变了):
<add name="ConnName" connectionString="metadata=... provider connection string="data source=SERVER;initial catalog=DB;persist security info=True;Integrated Security=true;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />