C# 无法将参数传递给正在使用ObjectDataSource的telerik报表

C# 无法将参数传递给正在使用ObjectDataSource的telerik报表,c#,asp.net-mvc,telerik-reporting,C#,Asp.net Mvc,Telerik Reporting,我是telerik reporting的新手,我在ASP.NETMVC4中使用ObjectDataSource创建了一个简单的报告。我创建了一个模型类,如下所示 [DataObject] public class StockMonitoring { [DataObjectMethod(DataObjectMethodType.Select)] public List<StockDetail> GetExpiredDrugBrand(int SiteID) {

我是telerik reporting的新手,我在ASP.NETMVC4中使用ObjectDataSource创建了一个简单的报告。我创建了一个模型类,如下所示

[DataObject]
public class StockMonitoring
{

    [DataObjectMethod(DataObjectMethodType.Select)]
    public List<StockDetail> GetExpiredDrugBrand(int SiteID)
    {
        //returns list by calling stored procedure which takes SiteID
    }
}
鉴于以下代码:

 @(Html.TelerikReporting().ReportViewer()    
   .Id("reportViewer1")
   .ServiceUrl("/api/reports/")
   .TemplateUrl("/ReportViewer/templates/telerikReportViewerTemplate-8.1.14.804.html")
   .ReportSource((ReportSource) ViewBag.ReportSource)
   .ViewMode(ViewModes.INTERACTIVE)
   .ScaleMode(ScaleModes.SPECIFIC)
   .Scale(1.0)
   .PersistSession(false)
   )
当我评论这句话时

    Source.Parameters.Add(new Parameter("SiteID", SID));
并在VS 2012中创建的我的报告“StockMonitoring\u Expired”中设置SiteID的设计时间值。我的上述代码正常工作,并在模型中点击“GetExpiredDrugBrand”方法,但当我取消对上述行的注释并删除SiteID的设计时间值时,我的代码给出以下错误:

An error has occurred while processing Table 'table1': An error has occurred while resolving 'ObjectDataSource' data source: Cannot convert to type System.Int32
我无法将SiteID参数传递给我的“GetExpiredDrugBrand”方法,该方法反过来调用存储过程来检索数据。我阅读了telerik的报告文档,但无法找出问题所在。代码有什么问题


提前谢谢你……

我找到了解决办法。在设计报表时,我忘记添加要使用的参数。我按照此链接添加参数并解决了我的问题

An error has occurred while processing Table 'table1': An error has occurred while resolving 'ObjectDataSource' data source: Cannot convert to type System.Int32