Asp.net mvc 4 如何使用MVC4VS2012将参数传递到telerik报告

Asp.net mvc 4 如何使用MVC4VS2012将参数传递到telerik报告,asp.net-mvc-4,telerik-reporting,Asp.net Mvc 4,Telerik Reporting,我想使用mvc 4 vs 2012将Log ind person id作为参数传递给telerik report Q1 2013,我不想通过UI参数发送参数。 我在aspx视图上所做的是 <script runat="server"> public override void VerifyRenderingInServerForm(Control control) { // to avoid the server form (<form runat

我想使用mvc 4 vs 2012将Log ind person id作为参数传递给telerik report Q1 2013,我不想通过UI参数发送参数。 我在aspx视图上所做的是

<script runat="server">
    public override void VerifyRenderingInServerForm(Control control)
     {
      // to avoid the server form (<form runat="server"> requirement
      }
     protected override void OnLoad(EventArgs e)
      {
         base.OnLoad(e);
          var report = new ImmunizationRpt();
          var instanceReportSource = new Telerik.Reporting.InstanceReportSource();
           instanceReportSource.ReportDocument = report;
          report.ReportParameters.Add("PatientKey",Telerik.Reporting.ReportParameterType.Integer, 1);
         ReportViewer1.ReportSource = instanceReportSource;

         ReportViewer1.RefreshReport();
  }
</script>

公共覆盖无效VerifyRenderingInServerForm(控件)
{
//避免使用服务器表单(要求
}
受保护的覆盖无效加载(事件参数e)
{
基础荷载(e);
var报告=新免疫RPT();
var instanceReportSource=new Telerik.Reporting.instanceReportSource();
instanceReportSource.ReportDocument=报告;
report.ReportParameters.Add(“PatientKey”,Telerik.Reporting.ReportParameterType.Integer,1);
ReportViewer1.ReportSource=instanceReportSource;
ReportViewer1.RefreshReport();
}

但是报表显示所有记录。它没有获取筛选记录。

我的报表显示所有记录,因为我没有将报表设置为根据参数值筛选记录。要实现这一点,首先我们需要从代码后面添加新参数(如我所做),然后我们需要添加一个新的筛选器,如以下代码所示:

 Telerik.Reporting.Filter filter1 = new Telerik.Reporting.Filter();
 filter1.Expression = "=Fields.PatientKey";
 filter1.Operator = Telerik.Reporting.FilterOperator.Equal;
 filter1.Value = "=Parameters.PatientKey.Value";
 report.Filters.Add(filter1);

有人知道吗?-很紧急。