WCF服务契约的泛型集合参数的传递
1.最近在学习Silverlight和WCF方面的东西,我在Silverlight中调用WCF服务的方法,返回一个泛型集合,WCF再调用业务逻辑层的方法,我用Linq做的数据访问层。当我在Silverlight调用WCF方法时,提示“The remote server returned an error: NotFound”这个错误,大家知道这是什么原因吗,数据访问层的方法我进行过单元测试,可以获取到结果,另外我在Silverlight中调用WCF层生成的示例方法,可以调用成功,这到底是什么原因啊,是不是Linq自动生成的实体类,没有定义为数据契约而不能获取到数据呢,还是其他的原因啊?
2.我在WCF层中,定义一个简单的实体类,没有加数据契约,然后定义一个方法,获取该实体类的集合,结果在Silverlight中可以获取到数据,我看书的时候,书上说一般客户端和服务端要交换数据的话,必须定义数据契约,但是我没有定义数据契约,为什么还是可以调用成功啊?还有就是Silverlight向WCF层传送List<T>泛型集合的参数的话,类型T是不是必须得定义为数据契约啊?
小弟刚开始学这方面的知识,期待高手们的解答。
[解决办法]
检查URL参数
service方法返回给Silverlight的对象需要序列化
数据过大,可以用google protobuf压缩下
[解决办法]