【发布时间】:2014-03-02 16:08:13
【问题描述】:
所以我有一堆实体模型。
许多控制器和视图,并且控制器经常去执行 linq 查询并使其可用于视图。
但是假设我有一个模型用户
我有一个 linq 查询来获取所有活跃用户
如果只完成一次,将其放入控制器中可能会很好,但我想重复一遍,我想知道放置模型特定查询的正确位置。
理想情况下,控制器会说 Users.getActiveUsers() 或类似内容。
【问题讨论】:
-
我认为您正在寻找的是repository pattern。然后你有一个
IRepository<EntityType>和一个IQueryable<T> Get(System.Func<T, Boolean> Query)方法...UserRepo.Get(u=>u.Username == "Bob") -
一般来说,这种类型的操作应该作为模型的函数或在存储库中处理。我通常倾向于存储库模式。
标签: c# asp.net asp.net-mvc linq asp.net-mvc-4