强类型& 类型安全解决方案,我必须执行以下步骤。
但是,我有一些问题。
PS。 .Net RIA服务 - 5月预览不是我的最终答案。因为所有必需的dll和一些生成代码的大小。
感谢,
答案 0 :(得分:1)
嗯,我很高兴你知道.NET RIA Services将提供所有这些东西,但我知道尺寸是一个考虑因素。但请记住,因为看起来您正在考虑使用Silverlight 3,您可以使用该选项来缓存框架程序集以大大减少Xap大小:
我不肯定缓存适用于RIA服务程序集,但如果是这样,则意味着它们只下载一次。
假设这不是你想要的,还有2个其他选项可以从Linq类(我假设你的意思是实体框架类)中获取数据到客户端。最简单的方法是创建自己的WCF服务,如上所述。这样,您就可以在服务器上编写数据类,并在模拟服务器类的客户端上自动生成代理类。这里的缺点是业务规则不会在两者之间共享。因此,您需要在客户端上编写和执行您的数据验证属性。服务器分开。
下一个选项是使用ADO.NET Data Services将数据从服务器移动到客户端。这比上一个选项高出一步,因为您不必自己编写WCF服务来托管数据;它是为你生成的。当然,它需要在Xap中打包一个额外的Dll。
直接回答您的一些问题:
关于将输入控件绑定到属性的最后一个问题如下所示:
MyControl.xaml.cs:
public MyControl() {
this.DataContext = new LinqDataClass();
}
MyControl.xaml:
<TextBlock Text={Binding PropertyOnLinqDataClass}/>
这里,LinqDataClass是服务器端Linq数据类的客户端表示,并且有一个名为PropertyOnLinqDataClass的属性。您需要在客户端实现INotifyPropertyChanged接口以正确支持双向数据绑定。