智能客户端应用中消费多个信息卡安全服务的优化方案
1. 背景与问题引入
在使用 Windows Communication Foundation (WCF) 和信息卡进行开发时,会遇到一些使用体验上的问题。以之前的 MyAlerts 示例应用为例,客户端轮询信息卡安全服务以获取用户特定的警报。但当多次调用该服务时,每次都会显示身份选择器,这是因为 WCF 按通道存储凭据,每次调用服务时客户端和底层通道都会被创建和销毁,新的客户端实例没有用户授权的历史记录,这是对“用户控制和同意”原则的严格解释。
当开发涉及多个服务的重要应用时,若仅使用 WCF 和 Windows CardSpace 的原生功能,每次创建通道都会显示身份选择器。即使是来自同一提供商的多个服务,也会多次显示身份选择器,这会给用户带来极大的困扰。
2. 初始示例修改
为了观察多次调用服务时的情况,我们对 MyAlerts 示例应用进行修改,具体步骤如下:
1. 将之前章节完成的代码复制到 C:\BeginningCardspace\Chapter8\PartI 。
2. 在 Visual Studio 中打开项目。
3. 打开 AlertCenter.cs 表单。
4. 在 lbMyAlerts 列表框下方添加一个新按钮。
5. 将按钮命名为 btnCheckAlerts ,并将按钮文本改为 Check Alerts 。
6. 双击按钮创建点击事件,并添加以下代码:
超级会员免费看
订阅专栏 解锁全文
1990

被折叠的 条评论
为什么被折叠?



