我为什么要使用DataForm?

时间:2010-08-05 19:17:59

标签: c# silverlight mvvm silverlight-4.0

我正在使用ASMX服务的Silverlight 4 + MVVM项目。

我发现DataForm很麻烦。 IEditableObject,绑定等似乎是一种痛苦。我已经在没有DataForm的情况下在我的应用程序中完成了一些表格,并且他们的表现非常好。

所以我想我真正的问题是,数据形式给我的是什么手轰炸表格不会?是同时编辑多个记录吗?因为这似乎是concurrency噩梦的一个秘诀。

1 个答案:

答案 0 :(得分:2)

不确定您的具体情况,但我可以从RIA服务的角度(特别是从DataForm中获益)回答。

RIA Services将实体传递给您的silverlight应用程序。这些enties已经是RESTful,并且已经实现了IEditableObject接口(好处#1),它们还可以携带元数据,如字段要求,导航属性,有效范围,错误消息等。默认情况下,Entity Framework和RIA Services将启动您可以通过携带您的数据源(例如SQL)中定义的元数据而不需要您付出代价(优势#2)。使用其中一个内置集合(如CollectionViewSource或DomainDataSource)提供导航实现(通过ICollectionView接口)(好处#3)。

根据您的说法,听起来您是以相当手动的方式传递数据,而您可能无法立即获得这些好处。

要获得其中一些好处,请尝试将元数据添加到模型对象中(通过添加System.ComponentModel.DataAnnotations命名空间中的属性。),尝试使用CollectionViewSource实现集合的过滤,排序和导航。 / p>