Mash-up和Gadget(widget)
Atlas中引入了两种新的特征:桥接技术和gadget。桥接技术允许Web应用程序消费来自多种远程Web服务的数据—当连接到一个单一的主机上时。这些消费一个或更多的远程服务的Web应用程序通常被称作是Mash-up。为了实现这一目的,该框架引入了桥接文件,以.asbx扩展名标志。其实,桥接文件是XML文件—允许我们以声明方式来定义到服务的连接并实现数据转换。下图4展示了一个通过Atlas桥接技术消费(mashing-up)来自多种远程Web服务上的数据的Web应用程序:
图4.消费来自多种远程服务的数据 |
对于不同的平台存在不同类型的gadget。一个基于web的gadget是一个可移植的web应用程序—能够被发布到任何gadget宿主网站上,例如,live.com或start.com。一个基于web的gadget的组成如下:
· 一个Xml声明:它包含该gadget本身的信息(标题,描述,出版商,构建信息,等等)以及到该gadget组件的链接(.jss和.css文件)。下列是一个针对一个虚构的gadget(widget)的示例manifest文件:
<?xml version="1.0" ?> <rss version="2.0" xmlns:binding="http://live.com"> <channel> <title>Widget alpha</title> <link>http://www.contoso.com</link> <description>What does this gadget do?</description> <language>en-gb</language> <pubDate>Date</pubDate> <!--Javascript function entry point; used by the host to load the gadget . --> <binding:type>Widget.alpha</binding:type> <item> <description>The JavaScript code component</description> <link>http://www.contoso.com/Gadgets/Widget/alpha.js</link> </item> <item> <description>This adds style to the gadget</description> <link>http://www.contoso.com/Gadgets/Widget/alpha.css</link> </item> </channel> </rss> |
· JavaScript代码:包含在该manifest文件链接到的.js文件中;它定义将被宿主的可移植组件。
· 式样表:它定义主机用来生成上面gadget的式样。
六、 测试驱动的框架
本文将在asp.net应用程序中使用Atlas UpdatePanel控件和部分页面生成技术。
这里所提供的示例是一个Amazon电子商务服务Web客户端应用程序,它使用City,Cuisine和Neighbourhood搜索参数来搜索在整个美国的餐馆。该示例应用程序使用了一个UpdatePanel控件来进行异步回馈和部分页面生成;从而使应用程序更为迅速和更具交互性以改进用户体验。
(一) 需求
· 微软Visual Studio 2005,.Net框架2.0及最新的Atlas CTP。
· 注册(免费)Amazon Web服务以取得存取键ID—用它来存取该电子商务服务。
(二) 配置网站
通过使用与框架的CTP一起安装的Atlas工程模板创建一个新的网站:
1. 打开Visual studio 2005。
2. 点击“文件”菜单,选择“新建”,然后点击Website。
3. 从“New Web site”对话框中选择“Atlas project”模板,位置,工程名和开发语言(VB或C#)。本例中所使用的语言为C#。
下面的图5
显示了在Visual Studio 2005中的“New Web Site”对话框。
图5.“New Web Site”对话框窗口 |
(三) 为SOAP请求配置服务
1. 登录到你使用Amazon Web服务创建的帐户并且使用提供的链接来保存到你的计算机上的WSDL文件中。
2. 从.Net框架2.0 SDK命令提示窗下使用WSDL.exe工具为你在第1步保存的WSDL中的服务生成一个代理类:
Wsdl <options> <URL | path>
3. 从你用Visual Studio创建的工程中打开Solution Explorer窗口,并右击工程文件,指向“Add asp.net”文件夹并且点击“App-Code”。
4. 右击Solutions Explorer窗口中的“App-Code”文件夹并且点击“Add Existing Item”。
5. 从“Add Existing Item”对话框中浏览到你前面所创建的代理文件,选择它并且点击“Add”;这将把服务代理文件添加到工程中。
查看本文来源