private void btnSave_Click(object sender, EventArgs e) { try { txtUri.Text = txtUri.Text.Trim(); if (string.IsNullOrWhiteSpace(txtUri.Text)) { MainForm.StaticWriteToLog("The connection string of the Service Bus namespace cannot be null."); return; } ServiceBusConnectionStringBuilder serviceBusConnectionStringBuilder; try { serviceBusConnectionStringBuilder = new ServiceBusConnectionStringBuilder(txtUri.Text); } catch (Exception) { MainForm.StaticWriteToLog("The format of the connection string is invalid."); return; } if (serviceBusConnectionStringBuilder.Endpoints == null || serviceBusConnectionStringBuilder.Endpoints.Count == 0) { MainForm.StaticWriteToLog("The connection string does not contain any endpoint."); return; } var host = serviceBusConnectionStringBuilder.Endpoints.ToArray()[0].Host; var index = host.IndexOf(".", StringComparison.Ordinal); var key = index > 0 ? CultureInfo.CurrentCulture.TextInfo.ToTitleCase(host.Substring(0, index)) : "MyNamespace"; using (var parameterForm = new ParameterForm("Enter the key for the Service Bus namespace", new List <string> { "Key" }, new List <string> { key }, new List <bool> { false })) { if (parameterForm.ShowDialog() != DialogResult.OK) { return; } key = parameterForm.ParameterValues[0]; if (string.IsNullOrWhiteSpace(key)) { MainForm.StaticWriteToLog("The key of the Service Bus namespace cannot be null."); return; } var value = txtUri.Text; try { ConfigurationHelper.AddServiceBusNamespace(configFileUse, key, value, MainForm.StaticWriteToLog); } catch (ArgumentNullException ex) { MainForm.StaticWriteToLog(ex.Message); } serviceBusHelper.ServiceBusNamespaces.Add(key, ServiceBusNamespace.GetServiceBusNamespace(key, value, MainForm.StaticWriteToLog)); cboServiceBusNamespace.Items.Clear(); cboServiceBusNamespace.Items.Add(SelectServiceBusNamespace); cboServiceBusNamespace.Items.Add(EnterConnectionString); // ReSharper disable once CoVariantArrayConversion cboServiceBusNamespace.Items.AddRange(serviceBusHelper.ServiceBusNamespaces.Keys.OrderBy(s => s).ToArray()); cboServiceBusNamespace.Text = key; } } catch (Exception ex) { HandleException(ex); } }