我们正在IIS 7.5上运行带有RIA服务的Silverlight应用程序,我们只是发送了垃圾邮件,上面写着“查询加载操作失败'xxx'。访问操作'xxx'被拒绝了。”这反过来在事件查看器中显示信息消息“”(此消息当前被抑制以限制事件记录)
流程为:用户最初使用Forms身份验证登录并进行身份验证,使用滑动到期设置到期时间为12小时。所有RIA域服务类都标有[RequiresAuthentication]。
我对ASP.NET和Forms身份验证并不十分熟悉,但我最初的想法是用户会话已过期。所以我尝试通过处理状态代码为Unauthorized(对应于401错误)的DomainOperationExceptions来修复它,并像这样刷新用户
private void OnLoadComplete(LoadResult<MyObject> res)
{
if (res.Error != null)
{
var dom = res.Error as DomainOperationException;
if (dom != null && dom.Status == OperationErrorStatus.Unauthorized)
{
WebContext.Current.HttpAuthentication.LoadUser();
}
}
}
不幸的是,这并没有什么不同。
它实际上是会话到期,还是有其他可能触发此错误的东西?什么是正确的处理方式?
让我知道还有什么需要帮助诊断问题...