• maxItemsInObjectGraph解释


    maxItemsInObjectGraph:一个整数,指定要序列化或反序列化的最大项数,可以限制对象图中要序列化的项数。默认的就是65535,当客户端与WebService之间传递的是对象要序列化的个数超过这个数时会报错:序列化的对象个数超出了65535个。最大值:2147483647

    MaxItemsInObjectGraph 属性指定序列化程序在一次 ReadObjectWriteObject 方法调用中序列化或反序列化的对象的最大数目。该方法总是读取一个根对象,但此对象的数据成员中可以具有其他对象。这些对象又可以具有其他对象。默认值为 MaxValue。请注意,当序列化或反序列化数组时,每个数组项都计为一个单独的对象

    对象的个数计算方式:

    例如:现在在WebService端有一个对象Student

    Public class Student

    {        

        Public int ID{get;set;}

        public Name{get;set;}

    }

    在传递的过程中,对象的个数就是这个对象的本身加上本身所包含的对象的个数,就这个来说那么就是3个对象,要想使这三个对象能够序列化 maxItemsInObjectGraph=对象个数+2(假设maxItemsInObjectGraph默认值为0),只有在maxitemslnObjectGraph 比对象个数+2大的情况下,编译器才不会报错,要不然,就会出现上面的错误,其实还不止于此,这个的前提是只有一条记录的情况下,如果是两条记录呢,MaxItemSlnObjectGraph的最小值=对象个数*记录的条数(传递的可能是这个对象的一个集合)+2。

    本文参考:http://www.cnblogs.com/wangshuai/archive/2009/12/29/1634978.html

  • 相关阅读:
    Linux 进程退出后自动启动
    Python UDP broadcast PermissionError: [Errno 13] Permission denied
    C# 获取MAC地址
    C# 多线程
    C# UdpClient 设置超时时间
    C# 控件聚焦
    C# 添加图片资源
    C# Listview 第一列不能居中
    Ubuntu 14.04 AM335x TI-RTOS 编译
    为AM335x移植Linux内核主线代码
  • 原文地址:https://www.cnblogs.com/thankyou555/p/3202638.html
Copyright © 2020-2023  润新知