Session 在会话中获取Crystal报表数据

Session 在会话中获取Crystal报表数据,session,crystal-reports-2010,Session,Crystal Reports 2010,我注意到crystal report在页面索引更改时再次运行Linq查询,这意味着当我们从第一页加载第二页时? 所以我只是想知道我们是否可以得到加载的页面,这样我们就可以在会话中保留值 只是一个提示是必需的,因为我没有从谷歌得到想要的结果 更新: 很抱歉,我在匆忙中点击了一个错误的标签。 所以问题是: 以下是我的代码,我使用fr运行crystal report: var rpt = new Result(); List<class> lst1

我注意到crystal report在页面索引更改时再次运行Linq查询,这意味着当我们从第一页加载第二页时? 所以我只是想知道我们是否可以得到加载的页面,这样我们就可以在会话中保留值

只是一个提示是必需的,因为我没有从谷歌得到想要的结果

更新: 很抱歉,我在匆忙中点击了一个错误的标签。 所以问题是:

以下是我的代码,我使用fr运行crystal report:

var rpt = new Result();                    
List<class> lst1 = new DALMethod().Get();
rpt.SetDataSource(lst1);
CRReportViewer.ReportSource = rpt;
var rpt=新结果();
List lst1=new DALMethod().Get();
rpt.SetDataSource(lst1);
CRReportViewer.ReportSource=rpt;
当我从第1页切换到第2页或更多页时,DAL中的这个方法会在第一次加载时再次调用,所以我只想在第一次运行查询时在会话中保存数据,下一次当我获取页面索引时,我会显示会话中的数据

if (!IsPostBack)
{
 //clear session and create new session
 Session["ReportGenericList"] = null;
}
List<class> datasourceLst=null;

if (Session["ReportGenericList"] != null)
  {
    datasourceLst= (List<class>)Session["ReportGenericList"];
  }
else
  {
   datasourceLst = //call methods to fill datasource
   Session["ReportGenericList"] = datasourceLst;
  }

有没有办法在c代码中获取页面索引?

我已经找到了解决方案,希望这可以帮助其他人: 我使用了一个通用列表作为数据源:

  • 一旦我们第一次知道页面加载,我的意思是不是回发,我们就可以初始化一个要在会话中维护的列表

  • 显示报告后,我们可以添加数据源(列表类型)

  • 报告页面上的轮班数据将取自会话

    if (!IsPostBack)
    {
     //clear session and create new session
     Session["ReportGenericList"] = null;
    }
    List<class> datasourceLst=null;
    
    if (Session["ReportGenericList"] != null)
      {
        datasourceLst= (List<class>)Session["ReportGenericList"];
      }
    else
      {
       datasourceLst = //call methods to fill datasource
       Session["ReportGenericList"] = datasourceLst;
      }
    
    if(!IsPostBack)
    {
    //清除会话并创建新会话
    会话[“ReportGenericList”]=null;
    }
    列表datasourcest=null;
    如果(会话[“ReportGenericList”]!=null)
    {
    datasourceLst=(列表)会话[“ReportGenericList”];
    }
    其他的
    {
    datasourceLst=//调用方法填充datasource
    会话[“ReportGenericList”]=数据源列表;
    }
    

  • 你能用一些示例代码描述一下你的问题吗。它看起来与XPages无关,如果没有代码,它可能属于Serverfault或Superuser?@stwissel:很抱歉,我只是匆匆拿错了标签。