public SftpSettings() { InitializeComponent(); cbAuthenticationType.DataSource = Enum.GetValues(typeof(AuthenticationType)); if (!Properties.Settings.Default.SftpSettings.Trim().Equals("")) { SftpSetting sftpSetting = JsonConvert.DeserializeObject <SftpSetting>(Properties.Settings.Default.SftpSettings); txtPassword.Text = sftpSetting.Password; txtHostName.Text = sftpSetting.HostName; txtUsername.Text = sftpSetting.Username; txtPrivateKey.Text = sftpSetting.PrivateKey.Trim().Equals("")?"Private Key": sftpSetting.PrivateKey; txtPublicKey.Text = sftpSetting.PublicKey.Trim().Equals("")? "Public Key":sftpSetting.PublicKey; txtPort.Text = sftpSetting.Port.ToString(); cbAuthenticationType.SelectedItem = sftpSetting.AuthenticationType; txtFacultyName.Text = sftpSetting.FacilityName; } else { cbAuthenticationType.SelectedItem = AuthenticationType.Password; } }
private void btnSave_Click(object sender, EventArgs e) { if (txtHostName.isEmptyOrHint()) { txtHostName.Focus(); return; } if (!IsInt(txtPort.Text.Trim())) { txtPort.Focus(); return; } if (txtUsername.isEmptyOrHint()) { txtUsername.Focus(); return; } //if(txtPassword.isEmptyOrHint()&& // (txtPrivateKey.Text.Equals("Private Key", StringComparison.CurrentCultureIgnoreCase) || // txtPublicKey.Text.Equals("Public Key", StringComparison.CurrentCultureIgnoreCase))) //{ // txtPassword.Focus(); // return; //} SftpSetting newSetting = new SftpSetting { Username = txtUsername.Text.Trim(), Port = Convert.ToInt16(txtPort.Text), HostName = txtHostName.Text.Trim(), Password = txtPassword.isEmptyOrHint()?"":txtPassword.Text, PrivateKey = txtPrivateKey.Text.Trim().Equals("Private Key", StringComparison.CurrentCultureIgnoreCase) ?"":txtPrivateKey.Text.Trim(), PublicKey = txtPublicKey.Text.Trim().Equals("Public Key", StringComparison.CurrentCultureIgnoreCase) ? "" : txtPublicKey.Text.Trim(), AuthenticationType = (AuthenticationType)cbAuthenticationType.SelectedItem, FacilityName = txtFacultyName.Text }; Properties.Settings.Default.SftpSettings = JsonConvert.SerializeObject(newSetting); Properties.Settings.Default.Save(); MessageBox.Show("Setting Saved!", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); }
private static SftpClient GetUpdatedClient() { SftpSetting s = JsonConvert.DeserializeObject <SftpSetting>(Properties.Settings.Default.SftpSettings); //MessageBox.Show(Properties.Settings.Default.SftpSettings); switch (s.AuthenticationType) { case AuthenticationType.Password: return(new SftpClient(s.HostName, s.Port, s.Username, s.Password)); case AuthenticationType.PrivateKey: return(new SftpClient(new ConnectionInfo(s.HostName, s.Port, s.Username, GetPrivateKey(s.Username, GetFileName(s.PrivateKey))))); case AuthenticationType.PublicKey: return(new SftpClient(new ConnectionInfo(s.HostName, s.Port, s.Username, GetPrivateKey(s.Username, GetFileName(s.PrivateKey))))); } return(null); }