您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> asp.net >> 正文

关于上下文(Context)/2(转MS)

作者:作者:未…    信息学院来源:网络收集    点击数:    更新时间:2006-8-28 我要参与讨论

 

[Visual Basic]
<script language="VB" runat="server">   
Sub Page_Load(sender As Object, e As EventArgs)

{       
If User.Identity.IsAuthenticated Then           

 welcome.Text = "欢迎" + User.Identity.Name       

Else           

 ' 尚未登录,添加一个指向登录页的链接           

welcome.Text = "请登录!"           

welcome.NavigateUrl = "signin.aspx"       

End If   

End Sub
</script>

<asp:HyperLink id="welcome" runat="server" maintainstate="false"></asp:HyperLink>
[C#]
<script language="C#" runat="server">   

void Page_Load(object sender, EventArgs e)
{       

if (User.Identity.IsAuthenticated)
{           

welcome.Text = "欢迎" + User.Identity.Name;       
}       

else
{            // 尚未登录,添加一个指向登录页的链接           

welcome.Text = "请登录!";           

 welcome.NavigateUrl = "signin.aspx";       

}   

}

</script>

<asp:HyperLink id="welcome" runat="server" maintainstate="false"></asp:HyperLink>

Context.Items 简介

希望以上示例可以说明,使用手头仅有的上下文信息编写 Web 应用程序是多么容易。那么,如果可以用同样的方法访问您应用程序独有的一些上下文,不是很好吗?
这就是 Context.Items 集合的用途。它使用在参与处理请求的各部分代码中都可用的方法,保存应用程序的请求特有值。例如,同样一条信息可以用在 Global.asax、ASPX 页、页内的用户控件中,也可以由页调用的业务逻辑使用。
请考虑 IBuySpy Portal(英文)应用程序示例。它使用一个简单的主页 DesktopDefault.aspx 来显示门户内容。显示的内容取决于所选择的选项卡,以及用户(如果已经过身份验证)角色。

图 2:IbuySpy 主页
查询字符串包含正被请求的选项卡的 TabIndedx 和 TabId 参数。在处理请求的整个过程中,一直使用此信息筛选要显示给用户的数据。http://www.ibuyspyportal.com/DesktopDefault.aspx?tabindex=1&tabid=2(英文)
要使用查询字符串值,需要首先确保它是一个有效值,如果不是,则要进行一些错误处理。它并不是一大串代码,但是您真的要在每个使用该值的页和组件中复制它吗?当然不!在 Portal 示例中,甚至更多的地方都涉及到它,因为一旦我们知道了 TabId,就可以预先加载其他信息。
Portal 使用查询字符串值作为参数,以构造一个新的 PortalSettings 对象,并将它添加到 Global.asax 的 BeginRequest 事件的 Context.Items 中。由于在每个请求开始处都执行了开始请求,这使得与该选项卡有关的值在应用程序的所有页和组件中都可用。请求完成后,对象将被自动丢弃 - 非常整齐!
[Visual Basic Global.asax]

Sub Application_BeginRequest(sender As [Object], e As EventArgs)                &nbs

[1] [2] [3] [4] [5] 下一页

在google里搜索更多关于上下文(Context)/2(转MS)

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明