Молзв Реках, это делается не так.
Все конечно зависит от требований к настройкам, но если брать в расчет ваш код, то, подозреваю, вам подойдет такой способ:
При запуске вы открываете файл настроек, считываете данные (или десериализуете) в объект Settings, отображаете информацию, в ходе работы пользователь может менять их (путем установки значения свойств (Macros_Directory, ..) и работать уже с ними. При выходе (в том числе аварийном) происходит перезапись файла. Также можно перезаписывать всякий раз при закрытии окна/страницы настроек.
Пока у вас метод довольно грязный, по сути он не делает то о чем говорит название.
Вы записываете в файл и кроме того еще устанавливаете свойство/свойства.
Я бы предложил вынеси в три отдельных метода:
public void SetAllPropertiesAndSave(string macDir, string steamid, string accpath)
{
// Do Something
}
public void SetAccPathAndSave(string accpath)
{
// Do Something
}
public void SetMacDirAndSave(string macDir)
{
// Do Something
}
Кроме того, код несколько странный. Какую задачу вы пытаетесь решить?
У вас пути к файлам одинаковые или вы просто показываете упрощенную версию реального кода?
Магнус Волынов, нет, вам нужно будет скопировать все, что выдала команда publish (находится в соответствующей папке) или, если вы хотите запаковать все в один файл, то нужно добавить `-p:PublishSingleFile=true`. Но эту возможность, если не ошибаюсь, добавили только в .net core 3.0.
После удаления из DataGrid вы хотите одновременно удалить и из базы, или синхронизацию делаете после завершения работы?