asp.net mvc 3 - 过滤,从超过1个表中排序数据

时间:2011-08-11 11:11:54

标签: asp.net-mvc asp.net-mvc-3 filter

我有4个参数要从我的数据库中过滤(两个下拉列表和两个日期时间类型字段)数据。我从这个数据库的3个表中获取数据。视图应该与屏幕上的视图类似。我该怎么做?简单的gridview不会像我想要的那样呈现数据。

如何向控制器发送4个参数?

http://i.stack.imgur.com/Fd84f.png

我正在使用Oracle数据库

1 个答案:

答案 0 :(得分:0)

作为选项,您可以使用LINQ进行选择:

var list = (from t1 in DataContext.Tables1
//here add you joins
select new
{
   Code = t1.Code,
   CompanyName = t1.Company, //for example
   //...
}).ToList();

GridView.DataSource = list;
GridView.DataBind();

但这只有在你使用“混合”应用程序时才有效 - 既有经典ASP又有MVC方法。否则,您需要将列表传递给您的视图。

关于参数......例如,您有布局

<select name="filter1">
//...
<select>

<select name="filter2">
//...
<select>

<input type="hidden" name="dateStart" />
<input type="hidden" name="dateEnd" />

然后在你的行动中你会有:

    public ActionResult MyAction(int filter1, string filter2, DateTime? dateStart, DateTime? dateEnd)
    {
        //code here
        return View();
    }