在使用POCO方式时WCF RIA Service 1.0 For VS2010(版本号4.0.XXX)下,具有实体成员的实体通过:
[Invoke]
public E GetXXXX()
的形式暴露给客户端,是无法编译通过的,这是这个版本的RIA的一个Bug,但这个问题在Sp1版(版本号4.1.xxx)得到了解决。
在SP1后,实体嵌套实际上是可以穿越RIA服务的,下面是我测试出来的:
1)List等单个值实体集合可以穿越,但多值集合(比如字典)则只能穿越基本类型;
2)非集合实体成员可以穿越;
3)object类型还是无法穿越(出现在实体成员中也不行).不会在客户端实体代码中出现,但也不会报编译错误。
另外:
1)实体如果打DataContract标签,实体集合成员必须打DataMember标签,否则实体集合成员无法自动生成到客户端实体代码中去。
2)可以支持继承自DomainService的类,可以是抽象的,也可以是泛型.
3)不支持自定义的元数据类型。
本文探讨了WCFRIAService1.0ForVS2010在不同版本下处理实体成员暴露给客户端时的差异,特别关注了SP1版本解决了的实体成员穿越问题。详细阐述了实体集合、单个值实体、非集合实体及object类型的穿越能力,并强调了实体成员使用DataContract与DataMember标签的重要性。
88

被折叠的 条评论
为什么被折叠?



