1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| protected void Buttonvaliderbbd_Click(object sender, EventArgs e)
{
System.Data.SqlClient.SqlConnectionStringBuilder builder = new System.Data.SqlClient.SqlConnectionStringBuilder();
builder["Data Source"] = this.TextServeur.Text.ToString(); // serveur de la chaine de connexion
builder["Integrated Security"] = true;
nombdd = this.DropDownListBDD.SelectedItem.Value.ToString(); // le nom de la base de donnes
builder["Initial Catalog"] = this.DropDownListBDD.SelectedItem.Value.ToString(); // la base de doonée de la chaine de connexion
/// si la connexion string n'existe pas on la crer
ConnectionStringSettings mySetting = ConfigurationManager.ConnectionStrings[nombdd];
if((mySetting == null || string.IsNullOrEmpty(mySetting.ConnectionString)))
{
// throw new Exception("Fatal error: missing connecting string in web.config file");
Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
var section = config.GetSection("connectionStrings") as ConnectionStringsSection;
string connectionStringvalue = builder.ConnectionString;
string bddconnexionstring = nombdd + "ConnexionString";
section.ConnectionStrings.Add(new ConnectionStringSettings(bddconnexionstring, connectionStringvalue, "System.Data.SqlClient"));
config.Save();
var connectionStringField = Membership.Provider.GetType().GetField("MemberShipProvider", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
if (connectionStringField != null)
connectionStringField.SetValue(Membership.Provider, bddconnexionstring);
var roleField = Roles.Provider.GetType().GetField("CustomizedRoleProvider", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
if (roleField != null)
roleField.SetValue(Roles.Provider, bddconnexionstring);
}else{
string connectionStringvalue = builder.ConnectionString; //
Configuration connectionConfiguration = WebConfigurationManager.OpenWebConfiguration("~");
connectionConfiguration.ConnectionStrings.ConnectionStrings[nombdd].ConnectionString = connectionStringvalue;
connectionConfiguration.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("connectionStrings");
} |
Partager