我有一个带ReportViewer
的网络表单(.aspx页面),它使用服务器报告和重定向到MVC
控制器操作的按钮 - Index
。
我想将服务器报告参数传递给我的控制器操作。有可能吗?
所以,我得到了参数:
protected void Button1_Click(object sender, EventArgs e)
{
List<ReportParameterInfo> param = ReportViewer1.ServerReport.GetParameters().ToList();
string month = param.Where(p => p.Name == "month").FirstOrDefault().Values.FirstOrDefault();
string year = param.Where(p => p.Name == "year").FirstOrDefault().Values.FirstOrDefault();
Response.Redirect("/Report/");
}
我的索引ActionResult
通常看起来像:
public ActionResult Index()
{
....
return View(); //returns .cshtml view
}
我很感激任何建议。
答案 0 :(得分:3)
可以通过查询字符串传递它,并使用MVC中的模型绑定器。
从您的网络表单应用中使用Response.Redirect("/Report/?Year=2014&Month=2");
。然后为您的操作添加参数:
public ActionResult Index(int year, int month)
{
// year and month will be populated with the query string values
return View(); //returns .cshtml view
}