У меня есть атрибут Enum with Flags.
[Flags]
public enum AlcoholStatus
{
NotRecorded = 1,
Drinker = 2,
NonDrinker = 4
}
Я создаю Sqlparameter, как показано ниже.
new SqlParameter("@AlcoholStatus", SqlDbType.VarChar) {Value = (int) AlcoholStatus}
Если AlcoholStatus имеет все значения (NotRecorded | Drinker | NonDrinker), он возвращает 7 в качестве значения для SqlParameter.
Я анализирую этот параметр для хранимой процедуры, и я предпочитаю, чтобы я мог разобрать значение как «1,2,3». Какой лучший способ сделать это?
Или существует какой-либо другой простой способ фильтрации записей путем анализа целочисленного значения 7 в хранимой процедуре?
РЕДАКТИРОВАТЬ: Это происходит в функциональном фильтре, где пользователь хочет видеть людей с любым из вышеуказанных статусов.
Это довольно сложный SQL-запрос. Там я фильтрую AlcoholStatus, как показано ниже
WHERE AlcoholStatus IN "1,2,4,"