我一直在尝试将数据库从应用程序移动到另一台服务器而没有成功。
打开Web应用程序时出现以下错误消息:
用户是在应用程序池中配置为身份的域用户,并且还具有SQL Server的完全访问权限(我可以通过SQL Server Management Studio远程访问数据库)。
我尝试了以下内容:
域用户是Web和数据库服务器上的本地管理员。
Web.Config / App设置:
<appSettings>
<add key="DBServer" value="remoteSQLDBHostName" /> -- previous: value="."
<add key="DBName" value="WebDB" />
<add key="DBProvider" value="System.Data.SqlClient" />
<add key="DBMetadataBase" value="res://*/{0}.csdl|res://*/{0}.ssdl|res://*/{0}.msl" />
</appSettings>
连接字符串是在应用程序中动态构建的(示例代码段):
var sqlBuilder = new SqlConnectionStringBuilder
{
DataSource = serverName,
InitialCatalog = databaseName,
IntegratedSecurity = true
};
var providerString = sqlBuilder.ToString();
var entityBuilder = new EntityConnectionStringBuilder
{
Provider = providerName,
ProviderConnectionString = providerString,
Metadata = String.Format(metadataBase, Constants.ModelName)
};
var connStr = entityBuilder.ToString();
return connStr;