我已经使用MVC和MVC Report Viewer在VS2013中创建了一个SSRS报告。报表的数据源是有几个方法,返回不同类型的对象名单的一类:将参数传递给SSRS业务对象类数据源
public class ReportModel
{
//known branchId for test purposes
private static int branchId = 12345;
public List<Top5Record> GetTop5()
{
return (from s in context.Salesmen
where s.branchId == branchId
select new Top5Record
{
Name = tr.Name,
Sales = tr.Sales
}).ToList();
}
}
现在我做测试,我需要它,因此branchId传递中作为参数,而不是硬编码。因为我不直接创建ReportModel类,所以我没有看到如何在构造函数中传递branchId ......除非有些事情我不知道。
我的报告的URL看起来像这样:
http://localhost/Branch/Report?branchId=1234
所以我会非常想抓住从URL中branchId并把它传递给ReportModel类莫名其妙。这是可以做到的吗?
所有的信息(如this)目前为止,我发现SSRS参数似乎围绕在设计器级之后使用的参数从数据源中检索到数据。
如果我想实现的是不可能的,有没有人可以提出一些聪明的解决方法?我现在非常难过这一次。