示例#1
0
 /// <summary>
 ///     初始化(修改)
 /// </summary>
 /// <param name="connectionName"></param>
 public FrmConnectionMgr(string connectionName)
 {
     InitializeComponent();
     foreach (var item in Enum.GetValues(typeof(EnumMgr.StorageEngineType)))
     {
         cmbStorageEngine.Items.Add(item);
         cmbStorageEngine.SelectedIndex = 0;
     }
     OldConnectionName = connectionName;
     //Modify Mode
     ModifyConn = MongoConnectionConfig.MongoConfig.ConnectionList[connectionName];
     UiBinding.TryUpdateForm(ModifyConn, Controls);
     if (ModifyConn.AuthMechanism == ConstMgr.MONGODB_CR)
     {
         radMONGODB_CR.Checked = true;
     }
     if (ModifyConn.AuthMechanism == ConstMgr.MONGODB_X509)
     {
         radMONGODB_X509.Checked = true;
     }
     if (ModifyConn.AuthMechanism == ConstMgr.SCRAM_SHA_1)
     {
         radSCRAM_SHA_1.Checked = true;
     }
     foreach (var item in ModifyConn.ReplsetList)
     {
         lstHost.Items.Add(item);
     }
     cmbStorageEngine.SelectedIndex = ModifyConn.StorageEngine == EnumMgr.StorageEngineType.MmaPv1 ? 0 : 1;
     cmdAdd.Text = GuiConfig.IsUseDefaultLanguage ? "Modify" : GuiConfig.GetText("Common.Modify");
 }
示例#2
0
        /// <summary>
        ///     新建连接
        /// </summary>
        private void CreateConnection()
        {
            //更新数据模型
            UiBinding.TryUpdateModel(ModifyConn, Controls);

            //感谢 呆呆 的Bug 报告,不论txtConnectionString.Text是否存在都进行赋值,防止删除字符后,值还是保留的BUG
            ModifyConn.ConnectionString = txtConnectionString.Text;
            if (txtConnectionString.Text != string.Empty)
            {
                var strException = MongoHelper.FillConfigWithConnectionString(ref ModifyConn);
                if (strException != string.Empty)
                {
                    MyMessageBox.ShowMessage("Url Exception", "Url Formation,please check it", strException);
                }
            }
            else
            {
                //仅有用户名或密码
                if (txtUsername.Text != string.Empty && txtPassword.Text == string.Empty)
                {
                    MessageBox.Show("Please Input Password");
                    return;
                }
                if (txtUsername.Text == string.Empty && txtPassword.Text != string.Empty)
                {
                    MessageBox.Show("Please Input UserName");
                    return;
                }
                //数据库名称存在,则必须输入用户名和密码
                if (txtDataBaseName.Text != string.Empty)
                {
                    //用户名或者密码为空
                    if (txtUsername.Text == string.Empty || txtPassword.Text == string.Empty)
                    {
                        MessageBox.Show("Please Input UserName or Password");
                        return;
                    }
                }
                if (ModifyConn.IsUseDefaultSetting)
                {
                    ModifyConn.WtimeoutMs     = MongoConnectionConfig.MongoConfig.WtimeoutMs;
                    ModifyConn.WaitQueueSize  = MongoConnectionConfig.MongoConfig.WaitQueueSize;
                    ModifyConn.WriteConcern   = MongoConnectionConfig.MongoConfig.WriteConcern;
                    ModifyConn.ReadPreference = MongoConnectionConfig.MongoConfig.ReadPreference;
                }
                ModifyConn.ReplsetList = new List <string>();
                if (cmbStorageEngine.SelectedIndex == 0)
                {
                    ModifyConn.StorageEngine = EnumMgr.StorageEngineType.MmaPv1;
                }
                else
                {
                    ModifyConn.StorageEngine = EnumMgr.StorageEngineType.WiredTiger;
                }
                foreach (string item in lstHost.Items)
                {
                    ModifyConn.ReplsetList.Add(item);
                }
            }
        }
示例#3
0
 /// <summary>
 ///     初始化(修改)
 /// </summary>
 /// <param name="connectionName"></param>
 public FrmConnectionMgr(string connectionName)
 {
     InitializeComponent();
     foreach (var item in Enum.GetValues(typeof(EnumMgr.StorageEngineType)))
     {
         cmbStorageEngine.Items.Add(item);
         cmbStorageEngine.SelectedIndex = 0;
     }
     OldConnectionName = connectionName;
     //Modify Mode
     ModifyConn = MongoConnectionConfig.MongoConfig.ConnectionList[connectionName];
     UiBinding.TryUpdateForm(ModifyConn, Controls);
     foreach (var item in ModifyConn.ReplsetList)
     {
         lstHost.Items.Add(item);
     }
     cmbStorageEngine.SelectedIndex = ModifyConn.StorageEngine == EnumMgr.StorageEngineType.MmaPv1 ? 0 : 1;
     cmdAdd.Text = GuiConfig.IsUseDefaultLanguage ? "Modify" : GuiConfig.GetText(TextType.CommonModify);
 }
示例#4
0
 /// <summary>
 ///     新建连接
 /// </summary>
 private bool CreateConnection()
 {
     //更新数据模型
     UiBinding.TryUpdateModel(ModifyConn, Controls);
     if (radMONGODB_CR.Checked)
     {
         ModifyConn.AuthMechanism = ConstMgr.MONGODB_CR;
     }
     if (radMONGODB_X509.Checked)
     {
         ModifyConn.AuthMechanism = ConstMgr.MONGODB_X509;
     }
     if (radSCRAM_SHA_1.Checked)
     {
         ModifyConn.AuthMechanism = ConstMgr.SCRAM_SHA_1;
     }
     //感谢 呆呆 的Bug 报告,不论txtConnectionString.Text是否存在都进行赋值,防止删除字符后,值还是保留的BUG
     ModifyConn.ConnectionString = txtConnectionString.Text;
     if (txtConnectionString.Text != string.Empty)
     {
         var strException = MongoHelper.FillConfigWithConnectionString(ref ModifyConn);
         if (strException != string.Empty)
         {
             MyMessageBox.ShowMessage("Url Exception", "Url Formation,please check it", strException);
             return(false);
         }
     }
     else
     {
         if (!string.IsNullOrEmpty(txtUsername.Text) && string.IsNullOrEmpty(txtPassword.Text) && !chkInputPasswordOnConnect.Checked)
         {
             //仅有用户名,没有密码,也没有设置为连接时输入
             MessageBox.Show("Please Input Password");
             return(false);
         }
         if (string.IsNullOrEmpty(txtUsername.Text) && !string.IsNullOrEmpty(txtPassword.Text))
         {
             //仅有密码
             MessageBox.Show("Please Input UserName");
             return(false);
         }
         //清空密码,不论是否输入
         if (chkInputPasswordOnConnect.Checked)
         {
             ModifyConn.Password = string.Empty;
         }
         //数据库名称存在,则必须输入用户名和密码
         if (!string.IsNullOrEmpty(txtDataBaseName.Text))
         {
             //用户名为空或者(密码为空且不是连接时输入)
             if (string.IsNullOrEmpty(txtUsername.Text) || (string.IsNullOrEmpty(txtPassword.Text) && !chkInputPasswordOnConnect.Checked))
             {
                 MessageBox.Show("Please Input UserName or Password");
                 return(false);
             }
         }
         if (ModifyConn.IsUseDefaultSetting)
         {
             ModifyConn.WtimeoutMs     = MongoConnectionConfig.MongoConfig.WtimeoutMs;
             ModifyConn.WaitQueueSize  = MongoConnectionConfig.MongoConfig.WaitQueueSize;
             ModifyConn.WriteConcern   = MongoConnectionConfig.MongoConfig.WriteConcern;
             ModifyConn.ReadPreference = MongoConnectionConfig.MongoConfig.ReadPreference;
         }
         ModifyConn.ReplsetList = new List <string>();
         if (cmbStorageEngine.SelectedIndex == 0)
         {
             ModifyConn.StorageEngine = EnumMgr.StorageEngineType.MmaPv1;
         }
         else
         {
             ModifyConn.StorageEngine = EnumMgr.StorageEngineType.WiredTiger;
         }
         foreach (string item in lstHost.Items)
         {
             ModifyConn.ReplsetList.Add(item);
         }
     }
     return(true);
 }