你能解释一下Microsoft .NET RIA服务吗?

Mic*_*ael 2 silverlight ria

我读过它并且说实话这对我来说似乎都是一堆胡言乱语.

我不想阅读有关它如何增强您的体验的所有信息,您可以使用它来构建这个和那个.

你能给我一个明确的定义,它会做什么,这将是非常棒的.

Saq*_*qib 5

当我们编写Windows应用程序时,一切都发生在一台计算机上(除非您从网络获取数据.您单击鼠标,调用事件处理程序,您可以更改显示的内容).

然后,通过互联网,您将拥有一个无状态环境(暂时搁置Javascript)所有代码都在服务器上执行.使用ASP.Net生成静态HTML,并将其推送到客户端.作为回报,用户可以采取行动,服务器将获得另一个请求,依此类推.

使用Silverlight,客户端上发生了一切 - Xap被下载,解压缩并运行.问题是,并非所有事情都可以在Silverlight应用程序中完成 - 它不像Windows应用程序,它可以从硬盘上打开/保存文件 - 它更像是一个Asp.Net应用程序.问题是,数据在服务器上结束,Silverlight应用程序在客户端上.因此开发人员需要编写异步代码(以便UI不会冻结).这比Windows开发人员习惯的同步事件处理更复杂.此外,每次需要获取数据(例如对用户进行身份验证)时,都会返回服务器进行检查.因此,虽然Silverlight看起来像"浏览器中的WPF",但它实际上是一种非常不同的编程风格.Web开发人员将熟悉这一点,但想要开始使用Silverlight的标准业务开发人员会发现这很多开销.

因此.Net RIA服务试图将Windows开发的便利性带到Silverlight.它通过提供一个框架来完成这项工作,例如提供在客户端服务器之间共享.net类型的能力,客户端服务器可以在客户端上以有状态的方式运行,并使用rest xml/json服务将数据传输回服务器.

提供一个示例服务用于用户认证/授权/设置.

我建议你看看Nikhil Kothari撰写的这篇文章以及这篇(PDF)演练.另请查看一些提供的示例并尝试运行/修改它们.