将DTO与WCF一起使用

时间:2012-07-17 06:00:23

标签: c# wcf entity-framework dto

我有一个与POCO实体映射的EFM,以及使用WCF进行业务逻辑的

在WCF中调用此函数时: -

 public  List<DTO.Product> Viewall()
    {
        var val= _repositoryprod.GetAll().Take(2).ToList();
        return val;
    }

我收到错误套接字连接已被处理。

我尝试序列化 DTO课程,甚至使用 [DataContract] [DataMember] 属性,但没有运气。

M使用TCP Binding并且只是为了显示套接字连接处理的最大值仍然是.....

  

binding name =“netTcpStreaming”transferMode =“Streamed”maxReceivedMessageSize =“4294967296”maxBufferSize =“2147483647”maxBufferPoolSize =“2147483647”openTimeout =“01:00:00”receiveTimeout =“01:00:00”closeTimeout =“ 01:00:00“sendTimeout =”01:00:00“maxConnections =”100“listenBacklog =”100“

我做错了什么?

2 个答案:

答案 0 :(得分:0)

由于maxItemsInObjectGraph的默认限制为65536,可能会导致错误。请尝试更改并重试!

答案 1 :(得分:0)

获得解决方案,与EFM + POCO一样,您需要在WCF操作合同中添加ApplyDataContractResolver属性

只需按照此演练即可完成

http://msdn.microsoft.com/en-us/library/ee705457.aspx