C# WebForm.ReportViewer无限循环问题

C# WebForm.ReportViewer无限循环问题,c#,asp.net,visual-studio,C#,Asp.net,Visual Studio,我在VisualStudio2010(C#)中遇到了一个奇怪的问题,即使用报表查看器加载RDL文件 我使用以下代码加载RDL: //get the data set and then //. //. //pass the report to the viewer using (FileStream stream = new FileStream(_AccessReportDocument.F

我在VisualStudio2010(C#)中遇到了一个奇怪的问题,即使用报表查看器加载RDL文件

我使用以下代码加载RDL:

        //get the data set and then 
        //.
        //.
        //pass the report to the viewer            
        using (FileStream stream = new FileStream(_AccessReportDocument.FileName, FileMode.Open))
        {
            this.AccessReportViewer.LocalReport.LoadReportDefinition(stream);
        }
        this.AccessReportViewer.LocalReport.Refresh();
问题在于,一旦上面的代码到达最后一行,代码就会跳转到页面的卸载方法,然后返回到this.AccessReportViewer.LocalReport.Refresh()即无限循环。以前有人经历过吗?我已经了解到VS2010的报表查看器存在一些问题,但主要是设置参数,这是我还没有尝试去做的


调试表明,所有数据集等都可以很好地检索-因此这不是问题所在

如果在设置数据源时未检查回发,则VS2010可能会出现这种情况。这是因为对报表查看器进行了更改以异步加载数据。详细说明如下:


好的,我读了这篇文章,通过添加一个检查(!IsPostBack)来解决问题。如果!IsPostBack==true,然后获取数据并将其绑定到报表。这是可行的,但我不知道为什么它会导致报表无限加载。这是因为如果您不检查回发并在页面加载时设置数据源,那么因为报表查看器控件本身会进行异步回发以呈现自身,那么这将导致页面加载并再次设置数据源,重置报表查看器,然后重新开始所有操作。