从Managed Extensions for C++中使用.NET My Services

摘要:本白皮书将指导您编写一个使用示例 .NET My Services 的客户端应用程序。该客户端应用程序将使用 Managed Extensions for C++、Visual Studio .NET 和 .NET My Services 软件开发包 (SDK) 来编写。与 Visual C# 或 Visual Basic 客户端应用程序相比,您还需要执行其他一些步骤。本白皮书假定您已经熟悉 Visual Studio XML Web Service 模型,该模型用于创建和使用来自客户端应用程序的一般 Web Service。

简介

作为 Microsoft .NET 的先行措施,Microsoft 引入了以用户为中心的体系机构和一套 XML Web Service(称为 .NET My Services,以前的代码名为“HailStorm”)。.NET My Services 建立在 Microsoft .NET Alerts 和 Microsoft .NET Passport 的功能基础之上,是一系列 XML Web Service,将于 2002 年面世。到那时候,用户将可以安全地存储个人信息并控制对个人信息的访问。.NET My Services 平台是 XML Web Service 的集合,可以使用行业标准协议(包括简单对象访问协议 [SOAP]、XML 以及通用说明、发现和集成 [UDDI])通过 Internet 进行调用。NET My Services 可以对用户进行验证,可以发送警报,还可以存储个人信息,包括联系人、电子邮件、日历、配置文件、列表、电子钱包、物理位置、文档库、应用程序设置、收藏的 Web 站点、拥有的设备和接收警报的首选项。

为了鼓励开发人员开发使用这些服务的应用程序,Microsoft 在 2001 年 10 月召开的专业开发人员会议上发布了 .NET My Services SDK。此 SDK 包含示例服务和两个公开源代码的项目,以便将 Visual Studio 与 .NET My Services 集成。这些公开源代码的项目是用 Visual C# 编写的,它们为 Visual Studio 提供了额外的功能,使用户能够无缝地处理以下示例中的 .NET My Services 的特定特性。

首先,您应该知道 .NET My Services 使用称为 .NET Services 的中心元服务,理解这一点非常重要。在客户端和其他 .NET My Services(例如 .NET Contacts 或 .NET Wallet)之间的相互作用方面,此服务担当中介。集中化的 .NET Services 还可以代表用户对其他服务的提供进行管理,并在运行时将其他服务的位置传达给客户端。因此,在确定特定请求的地址之前,客户端应用程序必须与中心 .NET My Services 协商事务。

.NET My Services 还使用 Kerberos 验证协议并对所有 SOAP 数据包进行加密,以确保用户私人数据的安全。这意味着,所有客户端应用程序都必须提供请求 Kerberos 验证单的功能,并且必须在所有的 SOAP 请求中显示这些验证单。同样,客户端还必须能够加密 SOAP 请求并解密 SOAP 响应。

.NET My Services 服务定位器和加密中使用的所有技术都基于公开标准,并且有详尽的文档,这样,.NET My Services 开发人员就可以开发他们自己的应用程序层来处理这些功能。不过,.NET My Services SDK 包括两个可以解决这些问题的共享源代码项目。对于 Visual C# 和 Visual Basic,用户只需要在他们的客户端应用程序中包括对这些项目的引用,便可以利用这些功能。从根本上来说,这些功能允许开发人员像对其他 XML Web Service 一样来对 .NET My Services 进行编码。

注意:还需要提供一些其他措施,用于解决 Managed Extensions for C++ 客户端应用程序的 Add Web Reference(添加 Web 引用)对话框的局限性。其中,Managed Extensions for C++ 客户端应用程序使用了 XML Web Service(使用强类型的数据集)。在将来的 Visual Studio .NET 版本中,将不再需要这些附加措施。演练

在此演练中,您将从 .NET My Services SDK 生成 HsSoapExtension.dll,创建简单的 Managed Extensions for C++ 客户端,还将使用示例客户端代码向您的 .NET FavoriteWebSites 添加 Web 站点。

生成 HsSoapExtension.dll

在 Visual Studio 中,打开集成开发环境 (IDE)。

在 File(文件)菜单上,单击 Open(打开),然后单击 Project(项目)。

浏览 .NET My Services SDK 文件夹,并找到 HsSoapExtension 解决方案。

单击 Open(打开)。

在 Build(生成)菜单上,单击 Build Solution(生成解决方案)。 注意:本演练后面将用到 HsSoapExtension.dll。

创建简单的 Managed Extensions for C++ 客户端

在 File(文件)菜单上,单击 New(新建),然后单击 Project(项目)。

将显示 New Project(新建项目)对话框。

在 Project Types(项目类型)窗格中,单击 Visual C++,然后在 Templates(模板)窗格中,单击 Managed C++ Application(管理 C++ 应用程序)。

在 Name(名称)框中,输入 MyServiceClient。

单击 OK(确定)。

在命令行中找到 MyServiceClient 项目目录,然后运行以下命令:disco http://localhost/WSDL/myFavoriteWebSites.wsdl

此命令将下载 soaprp.xsd 和 myFavoriteWebSites.wsdl 文件并生成 results.discomap。生成的 .discomap 文件将说明 .wsdl 和 .xsd 文件之间的依存关系。

时间: 2024-08-08 05:14:37

从Managed Extensions for C++中使用.NET My Services的相关文章

web-在angualr中怎么写一个services绑定到数据

问题描述 在angualr中怎么写一个services绑定到数据 我写了一个例子,但是报错 html 代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" href="libs/bootstrap/dist/css/bootstrap.min.css"> </head> &

SharePoint 2013中如何配置Excel Services

本文主要介绍如何启用SharePoint 2013版本Excel Services服务,并配置Excel Web Access部件,使Excel文档可以显示在Web页面中. 简单说一下流程,SharePoint 的Excel Services依赖于一个独立的服务应用程序,如果没有的话,需要在管理中心创建这个服务应用程序(类似搜索),然后开启相关服务,即在服务器场可以使用Excel Service服务.相关网站如果需要使用Excel Services的服务,需要开启该网站的网站集功能和网站功能.

在NetBeans中运行Amazon Web Services

Amazon提供了一个富web服务接口来访问他们的在线内容.为了帮助您理解如何使用这 些Web服务.Amazon还提供了一个全面的示例应用来展示如何使用所有被暴露出的操作.通 过一步步的操作,本文向您展示如何在NetBeans IDE中修改.构建.运行以及调试mazon的 示例应用程序.进而让您了解所有NetBeans的优点,比如代码补全.代码链接以及集成的 Javadoc帮助.还有调试程序的功能,尽管是单步的但监控的变量能够让您深入了解Amazon web服务的运行机制. 配置环境 安装Jav

.Net开发平台研究(三)

Visual C++,这个现有的用于编写低层代码和Windows程序的程序设计语言,还将继续存在,但是它将被修改更新以支持.NET开发平台. 特别地, Visual C++将获得新的关键字和数据类型(称为Managed Extensions to Visual C++),它使程序员可以创建可控制代码.不过,这些扩展是可以选择的:.NET Framework 所带的Visual C++版本完全向后兼容它的前身:Visual C++6.0,开发者可用它写不可控制代码. 这使C++在.NET领域中具有

如何在C#中使用Win32 API和其他库

C# 用户经常提出两个问题:"我为什么要另外编写代码来使用内置于 Windows 中的功能?在框架中为什么没有相应的内容可以为我完成这一任务?"当框架小组构建他们的 .NET 部分时,他们评估了为使 .NET 程序员可以使用 Win32 而需要完成的工作,结果发现 Win32 API 集非常庞大.他们没有足够的资源为所有 Win32 API 编写托管接口.加以测试并编写文档,因此只能优先处理最重要的部分.许多常用操作都有托管接口,但是还有许多完整的 Win32 部分没有托管接口. 平台

如何在C#中使用 Win32和其他库

C# 用户经常提出两个问题:"我为什么要另外编写代码来使用内置于 Windows 中的功能?在框架中为什么没有相应的内容可以为我完成这一任务?"当框架小组构建他们的 .NET 部分时,他们评估了为使 .NET 程序员可以使用 Win32 而需要完成的工作,结果发现 Win32 API 集非常庞大.他们没有足够的资源为所有 Win32 API 编写托管接口.加以测试并编写文档,因此只能优先处理最重要的部分.许多常用操作都有托管接口,但是还有许多完整的 Win32 部分没有托管接口. 平台

托管C++中GDI+和GDI混合编程技术

1.引言 早期的Windows程序中,可以使用GDI(Graphics Device Interface,图形设备接口)在一个窗体中绘制图形.文本和图像,但它的功能比较有限,尤其是图像处理方面.GDI+是GDI的一个新版本,它不仅在GDI基础上添加许多新特性,而且对原有的GDI功能进行优化,并在为开发人员提供的二维矢量图形.文本.图像处理.区域.路径以及图形数据矩阵等方面构造了一系列相关的类.其中,图形类Graphics是GDI+接口中的一个核心类,许多绘图操作都可用它来完成. 与GDI相比,G

C#中使用Win32类库

C# 用户经常提出两个问题:"我为什么要另外编写代码来使用内置于 Windows 中的功能?在框架中为什么没有相应的内容可以为我完成这一任务?"当框架小组构建他们的 .NET 部分时,他们评估了为使 .NET 程序员可以使用 Win32 而需要完成的工作,结果发现 Win32 API 集非常庞大.他们没有足够的资源为所有 Win32 API 编写托管接口.加以测试并编写文档,因此只能优先处理最重要的部分.许多常用操作都有托管接口,但是还有许多完整的 Win32 部分没有托管接口. 平台

【OH】Glossary Oracle词汇表(中)

Glossary [OH]Glossary Oracle词汇表(中) Oracle? Database Net Services Administrator's Guide 11g Release 2 (11.2) E41945-02 Glossary ● access control list (ACL) The group of access directives that you define. The directives grant levels of access to specif