Я хотел бы сохранить [Flags]
декорированное C# перечисление в PostgreSQL, используя функцию отображения перечисления Npg sql . Это возможно? Как определить таблицу Postgres?
Например, если у меня есть перечисление C#, например:
[Flags]
enum WeekDay
{
None = 0,
Sun = 1 << 0,
Mon = 1 << 1,
Tue = 1 << 2,
Wed = 1 << 3,
Thu = 1 << 4,
Fri = 1 << 5,
Sat = 1 << 6
}
И я определяю и пытаюсь заполнить таблицу следующим образом:
CREATE TYPE week_day AS ENUM ('none', 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat');
CREATE TABLE class_schedule (
id serial primary key,
name text,
meetings week_day
);
INSERT INTO class_schedule (name, meetings) VALUES ('seminar', 'mon');
INSERT INTO class_schedule (name, meetings) VALUES ('algebra', 'mon, wed, fri');
Вышеприведенное не работает в последней строке, говоря: «недопустимое входное значение для enum week_day:« mon, wed, fri ».
Я также попытался вставить mon|wed|fri
.