Привет, У меня есть сценарий ниже - У меня есть таблица в моей БД, которая содержит зону Urls. С каждой зоной Url в коде я вызываю в зону Url, чтобы получить токен. Срок действия токена истекает через 30 минут, поэтому я не могу его сохранить в БД.Оператор switch со значением от DB
Так что я в настоящее время есть переключатель заявление, как показано ниже:
switch (zone)
{
case "https://dummy.url.zone1":
return _zoneOneToken;
case "https://dummy.url.zone2":
return _zoneTwoToken;
case "https://dummy.url.zone3":
return _zoneThreeToken;
default:
const string errorMessage = "Zone not found";
Logger.Error(errorMessage);
throw new ApplicationException(errorMessage);
}
_zoneOneToken и т.д. частные строки в пределах класса, которые установлены в другом переключателе заявлении аналогично выше, и затем получить для каждой зоны, используя заявление переключателя выше ,
У меня есть DAO, который получает все зоны из БД - как показано ниже:
var allZones = zoneDao.GetAllZones();
allZones
будет содержать имя зоны, идентификатор зоны и URL зоны - есть в любом случае я могу использовать этого ZoneUrl из этого в моем случае, а не с строковыми значениями строковых значений?
Если я добавил класс Enum который содержит ZoneIds что-то вроде ниже:
public enum ZoneEnum
{
None = 0,
ZoneOne = 1,
ZoneTwo = 2,
ZoneThree = 3
}
Если я затем использовал Id от allZones и передал, что слишком переключатель заявление, как:
switch (zoneId)
{
case ZoneEnum.ZoneOne :
// how would I get zoneOne Url here?
//removed rest of code for this for brevity
}
Что насчет Id зоны? –
@ OlivierJacot-Descombes - вы можете развернуть с ответом на всех - ZoneId возвратил бы PK в таблице в DB - 1, 2,3 соответственно – TheRiddler