Использование значения в разных функциях - C#
Формулировка задачи:
Нужно объявить переменные через if и Path.Combine так чтобы в разных воидах их использовать. Это поможет мне сократить объем кода в разы и упростить его визуальное восприятие. Как это сделать?
string mod_folder; int Iiv = Start_Realism2015.Properties.Settings.Default.Int_in_Vanilla; if (Iiv != 1) mod_folder = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2"); else mod_folder = Path.Combine(GetExeDirectory(), @"MODS\SP2"); string server_dll = Path.Combine(mod_folder, @"Server.dll"); string sdk_dll_old = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2\SDK\deafult_old.dll"); string sdk_dll = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2\SDK\deafult.dll"); string steam_api = Path.Combine(GetExeDirectory(), "steam_api.dll");
Объявил вот так, правильно ли это? или может есть лучший способ?
public string mod_folder() {
int Iiv = Start_Realism2015.Properties.Settings.Default.Int_in_Vanilla;
string mf;
if (Iiv != 1) mf = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2");
else mf = Path.Combine(GetExeDirectory(), @"MODS\SP2");
return mf;
}
public string sv_dll()
{
string server_dll = Path.Combine(mod_folder(), @"Server.dll");
return server_dll;
}
public string sdk_dll_old()
{
string sdk_dll_old = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2\SDK\deafult_old.dll");
return sdk_dll_old;
}
public string sdk_dll()
{
string sdk_dll = Path.Combine(GetExeDirectory(), @"MODS\Realism2015v2\SDK\deafult.dll");
return sdk_dll;
}
public string steam_api()
{
string steam_api = Path.Combine(GetExeDirectory(), "steam_api.dll");
return steam_api;
}Решение задачи: «Использование значения в разных функциях»
textual
Листинг программы
static string GetModRelativePath(string path)
{
return Path.Combine(mod_folder(), path);
}
static string GetExeRelativePath(string path)
{
return Path.Combine(GetExeDirectory(), path);
}