Используйте enum в LinQ - PullRequest
       3

Используйте enum в LinQ

0 голосов
/ 16 августа 2011

нужна помощь

У меня есть это перечисление, которое устанавливает PayClassNo в Direct и Indirect. Я хочу использовать это перечисление в моем запросе LinQ.

Вот мой рабочий запрос LinQ:

var jDef = from jd in context.GetTable<RJVDefinition>()
                       select new PayrollJVDefinition
                       {
                           JVdefNo = jd.JVDefNo,
                           AccntCode = jd.AccntCode,
                           AccntDesc = jd.AccntDesc,
                           PayClass = enum.GetValue(jd.PayClassNo),
                           IsFixed = jd.IsFixed,
                           IsEmployee = jd.IsFixed,
                           IsAR = jd.IsAR,
                           CreatedByNo = jd.CreatedByNo,
                           CreatedDate = jd.CreatedDate,
                           ModifiedByNo = jd.ModifiedByNo,
                           ModifiedDate = jd.ModifiedDate
                       };

Нужна помощь, потому что я не уверен, сработает ли это.

Ответы [ 2 ]

1 голос
/ 16 августа 2011

Вы, конечно, можете выполнить перевод в коде, аналогично вашему примеру (используя Enum.Parse), но вам это не нужно. Вы можете использовать конструктор для установки типа свойства объекта в перечисляемое значение. Подробнее см. в этой статье .

0 голосов
/ 16 августа 2011

Вам просто нужно разобрать Enum, просто использовать что-то вроде

Enum.Parse(jb.PayClassNo, YourEnumType)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...