За последние три года, в течение которых я работал разработчиком, я видел много примеров, когда люди использовали оператор switch для установки пути (как внутреннего, так и внешнего интерфейса) для URL. Ниже приведен пример этого:
Внутренний пример (C #):
public static string getHost(EnvironmentEnum environment){
var path = String.Empty;
switch (environment)
{
case EnvironmentEnum.dev:
path = "http://localhost:55793/";
break;
case EnvironmentEnum.uat:
path = "http://dev.yourpath.com/";
break;
case EnvironmentEnum.production:
path = "http://yourpath.com/";
break;
}
return path;
}
Пример интерфейса (JavaScript):
(function () {
if (window.location.host.indexOf("localhost") !== -1) {
window.serviceUrl = "http://localhost:57939/";
}
else if (window.location.host.indexOf("qa") !== -1) {
window.serviceUrl = "http://dev.yourpath.com/";
}
else {
window.serviceUrl = "http://yourpath.com/";
}
})();
Обсуждается, является ли это хорошей или плохой практикой, и я думаю, что это плохая практика, потому что мы должны избегать такого рода кода и устанавливать правильную конфигурацию. Но, честно говоря, я действительно не знаю правильного ответа, и почему он не рекомендуется, и как правильно это реализовать.
может кто-нибудь объяснить это плюсы и минусы вышеуказанной практики?
Dictionary
намного более чистый способ кодирования этого в C #. Смотрите ideone.com/45g5xO . Или в JS используйте старый добрый объект, см. Jsfiddle.net/1ouhovqq .