有没有办法可以使用Model类过滤值?

时间:2013-01-02 20:31:29

标签: asp.net-mvc linq razor model querying

我是ASP.NET MVC4的新手,我有一个搜索/过滤器表单,您可以在其中过滤多个参数

所以这是我的控制器

public ActionResult Index(string page, int? neighborhoodID, int? accommodationType) {
...
}

我在想。我正在使用Model类对我的登录/注册使用数据注释和验证。

有没有办法可以使用Model类过滤值?

现在我只看一下请求的参数,并在我的linq查询中使用它们来获取过滤后的记录。

1 个答案:

答案 0 :(得分:1)

我认为你应该创建一个IndexViewModel

public class IndexViewModel
{
    public int? NeighbourhoodId { get; set; }
    public int? AccomodationType { get; set; }  
}

然后将@model IndexViewModel添加到您的视图顶部

似乎neigbourhoodIdaccomodationType来自下拉列表,因此将viewModel属性映射到这些下拉列表

然后控制器方法会像这样:

public ActionResult Index(string page, IndexViewModel model) 
{
    // You can use model.NeighbourhoodId and model.AccomodationType the same way you did with parameters
}