远程桌面在桌面.NET应用程序中执行报表

时间:2012-12-29 12:55:27

标签: .net reporting-services remote-desktop timeoutexception

当我使用使用SSRS报告的桌面应用程序的远程桌面执行模式时,如果用户尚未登录到服务器,则运行reoprt的应用程序中会出现此错误:

  

ASP.NET会话已过期

     

描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

     

异常详细信息:Microsoft.Reporting.WebForms.AspNetSessionExpiredException:ASP.NET会话已过期

     

源错误:在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。

     

堆栈跟踪:[AspNetSessionExpiredException:ASP.NET会话已过期]
         Microsoft.Reporting.WebForms.ReportDataOperation..ctor()+722
         Microsoft.Reporting.WebForms.HttpHandler.GetHandler(String operationType)+687
         Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext context)+57   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+599
         System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)+171

如果用户通过“远程桌面连接”登录服务器,则该用户的错误消失。

任何人都知道为什么会出现这个错误?

1 个答案:

答案 0 :(得分:0)

我通过更改我的webapp的IIS设置解决了这个问题。如果遇到此类问题,则需要转到服务器上的IIS设置(管理工具)。然后右键单击“默认网站”下的网站。单击属性,然后转到ASP.net选项卡。之后,单击“更改配置...”按钮。将出现一个表单,其中有一个名为“身份验证”的选项卡。单击它并将“身份验证模式”更改为“无”。这将解决Windows身份验证模式下RDP中的访问阻止。

此致