在aspx文件中获取DNN的会话

时间:2012-02-08 02:55:03

标签: dotnetnuke

我写了一个独立的aspx文件并将其上传到DNN网站。我添加了一个html模块并为该aspx文件创建一个iframe。我应该如何在aspx文件中检查DNN用户登录?我认为Session中有一些东西,但是当我在aspx页面上打印出来时它是空的。

2 个答案:

答案 0 :(得分:2)

aspx文件在DNN之外执行。您没有任何背景可供使用。更好的方法是将.aspx转换为.ascx,并从PortalModuleBase派生为DNN模块的开头。您可以在页面中添加适当的模块,并根据需要为模块提供权限,DNN将为您处理所有身份验证和授权详细信息。

A starting point for module development

我不建议在这种情况下使用它,但您也可以模拟我在Web服务中获取上下文所描述的方法。

https://stackoverflow.com/a/9164573/51851

答案 1 :(得分:0)

如果您的aspx位于DNN的网站内,您只需使用Request.IsAuthenticated来检查用户是否已登录。

但请注意,如果您启用了友好的网址 - DNN 5x及更高版本将劫持您的aspx请求。