Если вы используете C # 3.0 или более позднюю версию, var
- хороший выбор.
Это приводит к тому, что компилятор автоматически выводит тип локальной переменной из выражения в правой части ее оператора инициализации.
if (certain condition)
{
var Passwordpath = Properties.Settings.Default.Password1
}
else
{
var Passwordpath = Properties.Settings.Default.Password2
}
В противном случае наведите курсор на правую сторону оператора инициализации (например, Password1
) в среде разработки. Вы должны увидеть подсказку, которая выдает ее тип. Используйте это.
(Не по теме: присвойте локальные переменные именам, используя camelCasing, как рекомендовано в рекомендациях Microsoft по стилю кода C # и .NET. На самом деле переменная Passwordpath
должна быть passwordPath
.)
Редактировать , чтобы ответить на обновленный вопрос:
Самый простой способ - просто изменить логику . Вместо того, чтобы пытаться сохранить адрес свойства и позже установить его на новое значение, просто сохраните новое значение во временной переменной и используйте его для непосредственной установки свойства. Может быть, было бы легче объяснить с помощью некоторого кода ...
// Get the new password
string password = "New Password";
// Set the appropriate property
if (certain condition)
{
Properties.Settings.Default.Password1 = password;
}
else
{
Properties.Settings.Default.Password2 = password;
}
// Save the new password
Properties.Settings.Default.Save();