Я создал абстрактный класс контроллера приложения, от которого происходят мои контроллеры (как описано в следующей статье )
Ниже приведен пример того, как выглядит мой код
public abstract class ApplicationController : Controller
{
private ProjectDataContext datacontext = new ProjectDataContext();
protected ProjectDataContext DataContext
{
get { return datacontext; }
}
public ApplicationController()
{
ViewData["OpenTasks"] = DataContext.Tasks.Where(t => t.UserId == this.UserId).Count();
}
}
Это приводит к следующей ошибке, которую я определил, из-за выражения "Где" лямда:
Если у контроллера нет фабрики контроллеров, убедитесь, что у него есть открытый конструктор без параметров.
эта ошибка возникает в зависимости от того, как я пишу запрос LINQ, и единственный способ скомпилировать приложение - удалить предложение «Где» следующим образом.
ViewData["OpenTasks"] = DataContext.Tasks.Count();
любые идеи, в чем заключается проблема или как ее решить, поскольку мне нужно выполнить запрос к пользователю и не вернуть все записи.
заранее спасибо