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

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

1.创建“Atlas”应用程序

安装完Atlas之后,会在Visual Studio的项目模版里面出现一项“AtlasWeb 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过程中的一些东西记录下来与大家分享。

文中完整示例下载

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值