Конечно - до тех пор, пока ваше перечисление соглашается, т.е.
enum MyEnumType : byte {
Foo, Bar, Blip, ...
}
тогда все будет работать автоматически.
(это ограничение предусмотрено проектом и совместно используется с LINQ-to-SQL)
В качестве альтернативы, если перечисление равно : int
и не может быть изменено, приведите его в SQL:
SELECT ..., CAST(x.myEnum as int) as myEnum, ...
Или, наконец, используйте dynamic
API:
foreach(var row in conn.Query(...)) { // note no <T>
T obj = new Item { /* copy from row */ };
...
}
Первый - мой предпочтительный объект, так как он обеспечивает ограничение типа данных byte
во всем вашем коде, что хорошо для IMO.