明永成

导航

 

  SilverLight的运行环境(杂项整理) 收藏

把最近学习的东西整理一下。肯定不全。

首先,要明确的是:SilverLight是客户端插件。 它的所有内容都是部署到客户端然后由Runtime来执行的。这包括1.1版本开始支持的托管代码,虽然被编译为dll,但是,也是在客户端运行的。

客户端:

SilverLight的开发是需要.net Framework 3.0 的。但是,这并不要求客户端需要任何版本的.net Framework。

客户端只需要一个Runtime插件,就可以执行所有内容(包括托管代码)。对于1.1版本在Windows平台上,这个插件有40M。虽然比起Flash来说,大了许多。不过,在目前的存储设备条件下,应该还是可以接受的。

不过,需要注意的是,Silverlight的RunTime需要Windows XP SP2或 Windows Vista才能安装。不过,正版也好,D版也好,现在大部分人都已经使用SP2了吧。

服务器端:

SilverLight的所有内容都是客户端运行的,因此,服务器端不需要执行任何代码。

这样,SilverLight对于服务器端来讲,只不过是一组文件而已。只需要作为普通的文件进行部署即可。这些文件包括:.js文件,.html文件,.xaml文件,而SilverLight 1.1还包括存放托管代代码编译的dll的ClientBin。

由于XAML文件的本质是XML文件,如果服务器需要配置MIME时,只需要将发布的XAML文件的扩展名改为XML即可(这并不影响 SilverLight的工作),根本不需要动服务器的配置(因为对于已经在役的服务器,通常XML文件是已经配置为可访问的)。不过,这似乎不是对于每个网站都会遇到的情况。

这也就是说,SilverLight可以放在任何现有的网站服务器上,不论这个服务器是否有.net环境,是php服务器,或者ASP或者ASP.net等等。

整合到现有网站:

从上面的内容可以看出,SilverLight可以放在任何的页面上,HTML,PHP,JSP等等。

当然,作为同样姓M$的ASP.net,在Visual Studio中,整合开发要容易得多。

对于一个已经存在的WebSet,我们只需要在工程右键菜单中选中“Add SilverLight Link...”这样,就可以在已有的ASP.net工程中引用SilverLight的托管代码的DLL,也就可以访问已经做好的SilverLight 控件了。

并且,在发布这个WebSet的时候,SilverLight的各种文件(如XAML,.js等)也都会一起发布,而不会只包含DLL。

posted on 2011-03-24 10:06  明永成  阅读(872)  评论(0编辑  收藏  举报