繁体   English   中英

将字典传递给WCF服务

[英]Passing a Dictionary to WCF service

我需要将一个Dictionary(最多20,000个条目)传递给WCF服务。 我可以一次通过吗?

void SubmitDictionary(Dictionary<string, MyEntry> val);

MyEntry在哪里:

class MyEntry
{
    string Name;
    long Age;
}

是否有传递值的大小配置? 或者我们可以传递这样大的数据吗?

我需要知道两件事。

  1. 使用什么类型的绑定? BasicHttpBindingwsHttpBinding 如果您使用的是wsHttpBinding ,则无需担心它的长度

  2. 你有没有让你的课程序列化? 如果没有,那么就这样:

    [DataContract]
    public Class MyEntry
    {
          [DataMember]
          public string Name {get; set;}

          [DataMember]
          public long Age {get; set;}
    }

不幸的是,你有一个更大的问题,那就是你无法序列化IDictionary。

您可能需要创建一个数组或类似的可序列化自定义键值类型。

MaxReceivedMessageSizeMaxStringContentLengthMaxBufferSize

检查链接

http://geekswithblogs.net/niemguy/archive/2007/12/11/wcf-maxstringcontentlength-maxbuffersize-and-maxreceivedmessagesize.aspx

阅读有关如何增加尺寸的相关问题

wcf最大邮件大小

Silverlight和WCF:最大邮件大小

编辑检查服务参考的配置。 您应该将字典集合类型设置为Dictionary

祝好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM