跟TerryLee学习Atlas 学习手记(1):Hello,Atlas

关于Atlas的介绍已经有很多的文章,我就不废话了,对于我自己来说学习一个新东西,总是习惯于以一个简单的示例开始,Atlas也不例外,本文将会以一个非常简单的示例来踏上Atlas之旅,文中示例程序来自于Atlas老家

1.创建“Atlas”应用程序

安装完Atlas之后,会在Visual Studio的项目模版里面出现一项“Atlas”Web Site,如下图。在新建Atlas应用程序时,选择它,这样在新建的项目中的Bin文件夹下会存在一个Microsoft.Web.Atlas.dll的文件。

 


2.创建简单的Web Service

现在需要创建一个简单的Web Service来供“Atlas”客户端脚本调用,WebService.asmx部分实现代码如下:

None.gif [WebMethod]
None.gif
None.gif public  string  HelloWorld(String query)
None.gif
ExpandedBlockStart.gifContractedBlock.gif dot.gif {
InBlock.gif
InBlock.gif    string inputString = Server.HtmlEncode(query);
InBlock.gif
InBlock.gif    if (!String.IsNullOrEmpty(inputString))
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
InBlock.gif
InBlock.gif        return String.Format("Hello, you queried for {0}. The "
InBlock.gif
InBlock.gif          + "current time is {1}", inputString, DateTime.Now);
InBlock.gif
ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    else
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
InBlock.gif
InBlock.gif        return "The query string was null or empty";
InBlock.gif
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedBlockEnd.gif}

3.添加ASP.NET页面

创建一个ASP.NET页面并添加客户端脚本来调用刚才我们创建的Web Service。打开Default.aspx页面后,看到有这样一段代码:

 

None.gif < atlas:ScriptManager  runat ="server"  ID ="scriptManager" >
None.gif
None.gif </ atlas:ScriptManager >
ScriptManager 是Atlas一个重要的控件,它用来处理页面上的所有Atlas组件以及局部页面的更新,生成相关的客户端脚本,关于ScriptManager后面还会仔细分析。在ScriptManager中间引入Web Service的路径:
None.gif < atlas:ScriptManager  runat ="server"  ID ="scriptManager" >
None.gif
None.gif     < Services >
None.gif
None.gif         < atlas:ServiceReference  Path ="WebService.asmx"  />
None.gif
None.gif     </ Services >
None.gif
None.gif </ atlas:ScriptManager >
接着编写客户端脚本,调用Web Service:
ExpandedBlockStart.gif ContractedBlock.gif < script  type ="text/javascript"  language ="JavaScript" > dot.gif
InBlock.gif
InBlock.gif     function DoSearch()
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif     dot.gif{
InBlock.gif
InBlock.gif       var SrchElem = document.getElementById("SearchKey");
InBlock.gif
InBlock.gif       WebService.HelloWorld(SrchElem.value, OnRequestComplete);
InBlock.gif
ExpandedSubBlockEnd.gif     }

InBlock.gif
InBlock.gif     
InBlock.gif
InBlock.gif     function OnRequestComplete(result)
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif     dot.gif{
InBlock.gif
InBlock.gif       var RsltElem = document.getElementById("Results");
InBlock.gif
InBlock.gif       RsltElem.innerHTML = result;
InBlock.gif
ExpandedSubBlockEnd.gif     }

ExpandedBlockEnd.gif
None.gif
</ script >

其中DoSearch()方法负责调用Web Service的远程方法,OnRequestComplete()在异步调用完成时执行,在本示例中负责把结果显示在<Span>上。完整地Default.aspx页面代码如下:

None.gif < html  xmlns ="http://www.w3.org/1999/xhtml" >
None.gif
None.gif < head  id ="Head1"  runat ="server" >
None.gif
None.gif     < title > Atlas Script Walkthrough </ title >
None.gif
None.gif     < atlas:ScriptManager  runat ="server"  ID ="scriptManager" >
None.gif
None.gif         < Services >
None.gif
None.gif             < atlas:ServiceReference  Path ="WebService.asmx"  />
None.gif
None.gif         </ Services >
None.gif
None.gif     </ atlas:ScriptManager >
None.gif
ExpandedBlockStart.gifContractedBlock.gif     < style  type ="text/css" > dot.gif
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif     body {dot.gif}{ font: 11pt Trebuchet MS;
InBlock.gif
InBlock.gif        font-color: #000000;
InBlock.gif
InBlock.gif        padding-top: 72px;
InBlock.gif
ExpandedSubBlockEnd.gif          text-align: center}

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif     .text {dot.gif}{ font: 8pt Trebuchet MS }
InBlock.gif
ExpandedBlockEnd.gif   
</ style >
None.gif
None.gif </ head >
None.gif
None.gif < body >
None.gif
None.gif     < form  id ="Form1"  runat ="server" >
None.gif
None.gif         < div >
None.gif
None.gif            Search for
None.gif
None.gif             < input  id ="SearchKey"  type ="text"  />
None.gif
None.gif             < input  id ="SearchButton"  type ="button"  value ="Search"  onclick ="DoSearch()"  />
None.gif
None.gif         </ div >
None.gif
ExpandedBlockStart.gifContractedBlock.gif     < script  type ="text/javascript"  language ="JavaScript" > dot.gif
InBlock.gif
InBlock.gif         function DoSearch()
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif         dot.gif{
InBlock.gif
InBlock.gif           var SrchElem = document.getElementById("SearchKey");
InBlock.gif
InBlock.gif           WebService.HelloWorld(SrchElem.value, OnRequestComplete);
InBlock.gif
ExpandedSubBlockEnd.gif         }

InBlock.gif
InBlock.gif         
InBlock.gif
InBlock.gif         function OnRequestComplete(result)
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif         dot.gif{
InBlock.gif
InBlock.gif           var RsltElem = document.getElementById("Results");
InBlock.gif
InBlock.gif           RsltElem.innerHTML = result;
InBlock.gif
ExpandedSubBlockEnd.gif         }

InBlock.gif
ExpandedBlockEnd.gif    
</ script >
None.gif
None.gif     </ form >
None.gif
None.gif     < hr  style ="width: 300px"  />
None.gif
None.gif     < div >
None.gif
None.gif         < span  id ="Results" ></ span >
None.gif
None.gif     </ div >
None.gif
None.gif </ body >
None.gif
None.gif </ html >

运行后如下:

 


至此,一个简单Atlas应用程序就完成了。后续文章中,我会把自己学习Atlas过程中的一些东西记录下来与大家分享。

 

文中完整示例下载

转载于:https://www.cnblogs.com/yzxchoice/archive/2006/09/04/494535.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值