свойство навигации в представлении - PullRequest
0 голосов
/ 26 декабря 2011

У меня следующая ситуация. У меня есть таблицы Deliverers и Promotions, связанные с DelivererId на Promotions (внешний ключ). В моем приложении MVC я просто отображаю список рекламных акций с этим кодом:

                    promotions = db.Promotions.
                    Include("Deliverers1").
                    Where(p => p.WeekNo == currentWeek).
                    OrderByDescending(p => p.WeekNo);

Меня попросили добавить еще один столбец, который вычисляется динамически (выберите количество (*) в другой таблице). Мое решение состояло в том, чтобы создать представление как select *, count(....) from Promotions ....

Проблема в том, что в моем представлении отсутствует свойство навигации Deliverers1, и я не знаю, как его добавить. Есть предложения?

1 Ответ

0 голосов
/ 26 декабря 2011

Если другая таблица является навигацией по свойствам этого объекта:

var promotions = db.Promotions.
                    Include("Deliverers1").
                    Where(p => p.WeekNo == currentWeek).
                    OrderByDescending(p => p.WeekNo)
                    .Select(p=>new {p,p.Count(...));

Если не навигацией по свойствам:

var promotions = db.Promotions.
                    Include("Deliverers1").
                    Where(p => p.WeekNo == currentWeek).
                    OrderByDescending(p => p.WeekNo)
                    .Select(p=>new {p,db.othertable.Where(q=>q.foo==p.foo).Count());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...