如何使用Silverlight XAML视图,就好像它们是MVC视图一样

时间:2009-09-08 16:52:52

标签: asp.net-mvc silverlight

我最近进入了Silverlight开发阶段。到目前为止,我已经设法创建了一个Silverlight XAML视图,该视图使用ADO.Net实体框架从SQL Server数据库中提取数据,并在Silverlight DataGrid中显示数据。我还可以对数据执行简单的编辑和更新功能,并将其保留回数据库。此时我的理解失败了。根据我的收集,Silverlight客户端应用程序托管在ASP.NET或ASP.Net MVC Web应用程序中。通常我会使用ASP.Net MVC构建一个网站,并使用一些jQuery控件等来为每个视图增加界面。我如何使用我在ASP.Net MVC应用程序中创建的这些不同的Silverlight XAML视图,就像它们是MVC视图一样?我完全错过了什么吗?

2 个答案:

答案 0 :(得分:2)

RIA模型

将Silverlight(或任何RIA技术)集成到您的网站有两种不同的模式:

  • 整个Silverlight应用程序托管在简单的网站
  • Silverlight控件与其他交互(表单,jQuery等)集成到网站中

这两种模式都运行良好,由您决定哪种模式在您的方案中更有效。

Silverlight与服务器的通信

您的Silverlight应用程序是一个托管在浏览器中的插件,因此最好将其视为jQuery或其他客户端代码。有几种方法可以与服务器进行通信:

Silverlight支持WebClient和HttpWebRequest,因此您可以在客户端 - 服务器通信中获得低级别。我真的建议看RIA服务,因为它不仅处理通信,还处理验证规则。

Silverlight与HTML / Javascript集成

Silverlight可以通过HTML bridge从Javascript调用和调用。这意味着您的Silverlight组件可以与您的网页紧密集成。 Silverlight还可以直接与DOM交互 - 设置和读取表单值,更改CSS属性等。如果您愿意,您可以通过HTML桥接在Javascript中执行任何操作。

答案 1 :(得分:0)

要从Silverlight应用程序(在客户端计算机上运行)更新数据模型,请使用WCF (Windows Communication Foundation)。您的Silverlight应用程序将使用WCF与您的服务器通信,并且这些都与您提供Silverlight应用程序的方式无关(无论您使用的是Webforms还是MVC)。