[漫步云端,Azure Services Platform]第三回:谁说Live Mesh只是网络存储
[漫步云端,Azure Services Platform]第三回:谁说Live Mesh只是网络存储,在Mesh部署Silverlight应用
发布日期:2009.02.26 作者:Anytao
© 2009 Anytao.com ,Anytao原创作品,转贴请注明作者和出处。
1 引言
Azure、Mesh、Live和DataService,已经随着微软云计算的高调面世接踵而来。不管对于云计算,我们身处云里,还是雾中,不管我们接受还是回避,他们还是一如既往的来了。在Azure Services Platform支撑的整个大家族中,Live Mesh始终是诟病最多的一个,大部分的意见认为Mesh最多算作一个不错的网络存储,不至于和云计算这个神圣的概念扯上干系,就像我自己一样当部分时间里,Mesh都是作为几个互连设备的存储平台,为文件共享带来方便。
然而,事实并非如此,我们看到的只是Mesh的一个方面,而它的神秘面纱随着Live Framework CTP的推出而具有了更“云”的特性,难道Mesh只是个网络存储,本文中我们提供一个Silverlight Mesh-enabled Web Application应用,把超酷的Silverlight部署在Mesh中,感受真正的Live Mesh。
我们开始。
2 必要的准备
为了运行我们的Mesh应用,必须的安装和准备是应该的。
必备的条件
- 安装Live Framework SDK and Tools,相关的安装步骤接下来我们会分享。
- 具有Live Services: Live Framework CTP权限,如果没有具有Live Framework CTP的Token,请参见[第二回:我的第一个云端应用:Hello,Cloud!]中的申请办法,申请之后请选择耐心等待。
安装SDK及相关Tools
SDK及相关工具的安装路径,在选择新建Live Framework CTP项目时,有相关链接指导下载相关必须的SDK和Tools,详细的安装步骤可以参考其中的在线文档说明:
在此我们仅仅做以简单说明:
- 安装Live Mesh SDK
下载Live Mesh SDK,解压安装包,将解压之后的Live Framework SDK文件夹复制到%ProgramFiles%\Microsoft SDKs\((%ProgramFiles(x86)%\Microsoft SDKs\,64位系统)目录下保存。
- 安装Silverlight_Tools.exe
- 安装Live Framework Tools for Microsoft Visual Stuido
该工具必须在Live Mesh SDK和Silverlight_Tools.exe安装之后进行,安装之后打开Visual Studio,新建项目模板中就可见Live Framework项目模板,我们在接下来的畅游之旅中会看到其精彩的应用过程。
3 畅游Silverlight in Mesh-enabled
创建Mesh-enabled Web Application项目
- 完成了必要环境的安装,打开Visual Stuido,创建项目,可见新安装的Live Framework模板,选择Silverlight Mesh-enabled Web Application模板,并设置相应的路径和项目名称:
- 新建之后,将生成两个项目一个Silverlight项目和一个Mesh项目,所以新建之后将提示以有效帐户登陆Mesh:
- 创建简单的Silverlight应用,作为Mesh-enabled的部署Target。
例如,我们在Page.xaml中加入基本的元素:
<Grid x:Name="LayoutRoot" Background="Azure"> <StackPanel Margin="10, 20, 10, 20" Orientation="Vertical" HorizontalAlignment="Center"> <TextBlock FontSize="20">Hello, my silverlight app in live mesh.</TextBlock> <TextBox x:Name="txtInput" Width="300" Height="60" /> <Button x:Name="btnHello" Content="Hello, Mesh" Width="200" Height="50" Click="btnHello_Click" /> <TextBlock HorizontalAlignment="Center" FontSize="20" Foreground="Red">2009, Anytao.com</TextBlock> </StackPanel> </Grid>
并添加一点简单的操作:
// Release : code01, 2009/02/25 // Author : Anytao, http://www.anytao.com // List : Page.xaml.cs private void btnHello_Click(object sender, RoutedEventArgs e) { MessageBox.Show(string.IsNullOrEmpty(txtInput.Text) ? "Hello, Mesh" : txtInput.Text); }
可想而知,运行之后的Silverlight应用将以对话框的形式输出输入框的文本。更复杂的应用,都是可以实现的,随需而变的业务就有你自己了。
- 编译之后,运行F5,进入运行状态,将打开运行部署对话框,指导我们对Anytao.LiveMesh.App项目第一次部署和发布过程:
创建Live Service项目
- 由提示可知,主要的操作步骤包含3部,首先在Developers Portal创建Live Service: Live Framework CTP项目,具体的方法参考[第二回:我的第一个云端应用:Hello,Cloud!],当然前提是你必须具有相应的权限。
- 点击创建Live Service: Live Framework CTP之后,第一次将进入Terms of Use,当然是选择“I Accept”了。
- 进入项目创建,输入项目Lable和Description,并进入下一步:
- 选择项目的类型为“Create a Mesh-eabled Web application”,进入下一步,在此有进入Live Framework CTP SDK and Tools的下载链接,选择“Create”就创建了相应的项目:
- 创建之后,将生成新的“anytaomesh”项目,包含了该项目的基本信息,也可以选择“删除”等,点击Upload Package按钮,将进入部署流程:
部署项目包
- 回到Visual Studio,按顺序该进入第二步,点击“Copy full path of Anytao.LiveMesh.App.zip to clipcoard”,当然你也可以手动找到项目压缩包,在下一步上传:
- 选择“Browser”,将复制你的压缩包目录,点击“Deploy”进行部署:
- 这将是一个漫长的部署过程,因为你心爱的Silverlight应用正逐步由本地进入云中,这个过程是值得等待的,不是吗?
- 部署之后,将生成“Application Self Links”,这个URL可以看做是你的应用在Mesh中找到了组织,复制该地址,在下一步中使用:
- 再次回到Visual Stuido的部署框,将“Application Self Links”复制到第三步的输入框,点击OK。
- 不要着急,还有一个进度过程,哎,过程还挺多,再等等吧,因为部署之后,我们的第一个基于Mesh的Silverlight应用就算大功告成了:-)
Running in Cloud
- 部署完成,Visual Studio将自动打开Mesh,由Silverlight的加载过程和熟悉的Mesh桌面,我们有理由相信我们是在Mesh中运行着自己的Silverlight App了:
- 废话就不多说了,剩下的就是欣赏了:
还有更多刺激
- 部署之后,获得授权的用户都可以登陆Mesh进入Applications,选择自己的Web应用进行管理。你可以将自己的Mesh添加不同的Devices,那么你的所有互联设备都将能够运行自己的应用程序,除了Running in Cloud,你可以Running in Client。
- 最后,我禁不住想把惊喜分享给dudu、dingxue还有terrylee他们,那么发个invite members就可以将我的Silverlight Mesh-enabled Web Application分享给朋友们:
至此,我们完成了一次不错的Mesh畅游,感觉怎么样?不妨自己试试。
4 结论
你看这感觉是不是太酷了,最重要的是任何应用的更新和修改都会同步到任何互联设备、任何可访问成员端点,这就是Live Mesh的魅力,那么我们能说Live Mesh只是网络存储吗?答案已见分晓,留待大家讨论:-)
最后,提供一些有价值的参考,由大家选择:
代码下载:这里
参考文献
2009/02/26 | http://anytao.cnblogs.com/ | http://www.cnblogs.com/anytao/archive/2009/02/26/anytao_azure_03_siverlightinmesh.html
本文以“现状”提供且没有任何担保,同时也没有授予任何权利。 | This posting is provided "AS IS" with no warranties, and confers no rights.
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Worktile,新一代简单好用、体验极致的团队协同、项目管理工具,让你和你的团队随时随地一起工作。完全免费,现在就去了解一下吧。
https://worktile.com