Silverlight,作为长期市场领导者,拥有80%的市场份额,被广泛应用于需要丰富用户界面的网站。然而,企业级Web应用程序很少使用Flash。微软宣布推出Silverlight,旨在为网站和企业级Web应用程序提供服务,特别是他们还推出了针对商业应用程序的RIA服务。
已经存在的企业应用程序大多尝试将Silverlight作为应用程序的一部分,这些页面存在用户界面问题,或者需要更丰富的用户内容。因此,将Silverlight作为应用程序的一部分进行集成是非常重要的概念,而不是将Silverlight作为整个应用程序的默认设置。从头开始使用Silverlight创建的企业应用程序可能面临一些安全威胁。
Silverlight应用程序有助于避免页面回传。在Silverlight应用程序运行期间传输的数据,只下载服务输出数据,而不是像ASP.NET那样下载渲染后的页面内容。由于服务器和客户端之间的数据传输最小化,页面响应时间缩短(也会减少带宽)。更好的用户界面和事件处理机制有助于提高用户满意度。
1. 在ASP.NET应用程序中使用Silverlight控件 - Silverlight控件不能作为ASP.NET应用程序中的用户控件使用,因为无法从代码后台文件向控件传递数据。
2. 安全性:下载的xap内容的安全性是首要问题。可以使用混淆器避免xap的可读性,但仍然不是100%安全。
3. XAP的大小:xap的大小超过首次页面渲染将需要更多时间。但可以通过在运行时动态加载xap来避免这个问题。
4. 代理:如果服务在xap文件中引用,则需要考虑代理大小。代理还将业务结构提供给客户端系统,这将对UI和xap中的业务模型构成威胁。
在下一篇文章中,将添加更多关于在.NET中使用Silverlight的技巧...
以下是如何在ASP.NET中集成Silverlight控件的示例代码:
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:Silverlight ID="Silverlight1" runat="server"
Source="~/ClientBin/MySilverlightApplication.xap"
MinimumVersion="4.0.50401.0"
width="100%" height="400px"
AlternateText="需要Silverlight 4"
onError="Silverlight1_OnError">
<Parameters>
<asp:Parameter Name="param1" Value="value1" />
</Parameters>
</asp:Silverlight>