какой тип лучше всего подходит для трех радиокнопок?

1

Может быть, вы считаете этот вопрос тривиальным, но им просто любопытно, каково ваше мнение.

У меня три радиообмена. "Показать синий", "Показать красный" и "Показать все".

Я сделал это с нулевым логическим значением. В базе данных есть столбец, где синий - 0, а красный - 1, поэтому в metode мне нужно перевести bool в int, чтобы сравнить эти значения (я делаю это в С#). Конечно, это работает, но я задаюсь вопросом, является ли это лучшим решением.

И вопрос в том, какой тип лучше в этом случае? nullable bool, int или, может быть, строка?

Теги:
type-conversion
radio-button

1 ответ

2
Лучший ответ

bool имеет только два возможных значения: true или false. Если вам нужно представить больше значений, вам нужно сохранить их каким-либо другим способом.

Использование нулевого значения в качестве третьего значения является уродливым взломом кода.

Из wiki:

хороший способ запомнить, что означает "нуль", чтобы помнить, что с точки зрения информации "недостаток значения" - это не то же самое, что "значение нуля",

То есть, null должен использоваться, когда у вас нет значения.

В вашем случае использование enum будет легче читать и понимать, а также вы сможете добавить дополнительные опции позже, если это возникнет.

enum MyTypes{
 blue = 1, 
 red = 2, 
 all = 3
}

В базе данных enum становится столбцом int, содержащим значение выбранного параметра.

  • 0
    И как использовать это с radiobuttonfor?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню