c# - enable - multipleactiveresultsets sql server
Cómo habilitar MultipleActiveResultSets (3)
Tengo la siguiente cadena de conexión en mi código:
SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["RaiseFantasyLeagueConnectionString"].ConnectionString);
Mi webconfig para esto se ve así:
<connectionStrings>
<add name="RaiseFantasyLeagueConnectionString" connectionString="Data Source=MATT-PC/SQLEXPRESS;Initial Catalog=Raise;Integrated Security=True" providerName="System.Data.SqlClient"/>
¿Alguien puede decirme dónde puedo habilitar MultipleActiveResultSets para mi conexión?
Es realmente simple, solo agrega
MultipleActiveResultSets=true;
así que cambia, en tu web.config, la cadena de conexión de esta manera:
connectionString="Data Source=MATT-PC/SQLEXPRESS;" +
"Initial Catalog=Raise;Integrated Security=True;" +
"MultipleActiveResultSets=true;"
Prueba este codigo
<connectionStrings>
<add name="RaiseFantasyLeagueConnectionString" connectionString="Data Source=MATT-PC/SQLEXPRESS;Initial Catalog=Raise;Integrated Security=True ;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient";/>
Debe referirse a este artículo Msdn.
public static class ConfigurationService
{
static public string ConnectionString
{
get
{
try
{
// Specify the provider name, server and database.
string providerName = "System.Data.SqlClient";
string serverName = @"192.168.1.106/SQLEXPRESS";
string databaseName = "MyDatabaseName";
// Initialize the connection string builder for the
// underlying provider.
var sqlBuilder = new SqlConnectionStringBuilder();
// Set the properties for the data source.
sqlBuilder.DataSource = serverName;
sqlBuilder.InitialCatalog = databaseName;
sqlBuilder.IntegratedSecurity = false;
sqlBuilder.UserID = "Bob";
sqlBuilder.Password = "Bob1234";
sqlBuilder.MultipleActiveResultSets = true;
sqlBuilder.ApplicationName = "EntityFramework";
// Build the SqlConnection connection string.
string providerString = sqlBuilder.ToString();
// Initialize the EntityConnectionStringBuilder.
var entityBuilder = new EntityConnectionStringBuilder();
//Set the provider name.
entityBuilder.Provider = providerName;
// Set the provider-specific connection string.
entityBuilder.ProviderConnectionString = providerString;
// Set the Metadata location.
entityBuilder.Metadata = @"res://*/Models.MyDatabaseNameModel.csdl|res://*/Models.MyDatabaseNameModel.ssdl|res://*/Models.MyDatabaseNameModel.msl";
var result = entityBuilder.ToString();
return result;
}
catch (Exception)
{
}
return string.Empty;
}
}
}
Tenga en cuenta que Models in Models.MyDatabaseNameModel es un nombre de carpeta de su proyecto VS.