Vici.CoolStorage: фильтр с отношением ManyToOne и ManyToMany - PullRequest
2 голосов
/ 15 сентября 2009

Я получил исключение в Vici.CoolStorage 'Невозможно привести объект типа' System.String 'к типу' QueryExpression 'при использовании следующего фильтра для метода .List () моего класса Event:

Event.List("has(Resource where has(Teams where TeamID = @TeamID))", 
                "@TeamID", teamID);

-> Событие - Ресурс = отношение ManyToOne (свойство Resource)

-> Ресурс - Team = отношение ManyToMany, множественное число = true (свойство CSList Teams)

Я хочу получить все События с Ресурсом, который принадлежит указанной Команде (teamID). Возможно ли это в синтаксисе фильтра Vici.CoolStorage?

пс. teamID = Guid

1 Ответ

1 голос
/ 15 сентября 2009

Функция has () должна использоваться только с отношениями * ToMany. Я думаю, что вы имеете в виду это:

Полагаю, вы хотите выбрать все записи, которые имеют связанный ресурс, относящийся к определенной команде?

Это может быть то, что вы ищете:

Event.List("has(Resource.Teams where TeamID = @TeamID))", 
            "@TeamID", teamID);
...