点击或拖拽改变大小

SerializeSettingModifier 属性

获取或设置在产生增量时类或结构中哪些修饰符的成员参与序列化。

命名空间:  XPatchLib
程序集:  XPatchLib (在 XPatchLib.dll 中) 版本:4.1.0.4
语法
C#
public virtual SerializeMemberModifier Modifier { get; set; }

属性值

类型: SerializeMemberModifier
默认为 Public

实现

ISerializeSettingModifier
示例

下面的示例展示了 Modifier 的使用效果。

C#
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;

namespace XPatchLib.Example
{
    public class MemberType
    {
        class Author
        {
            public string Name { get; set; }

            public int Age;
        }

        public static void Main()
        {
            Author c = new Author();
            c.Name = "N1";
            c.Age = 3;

            //输出内容如下:
            /*
             * <?xml version="1.0" encoding="utf-16"?>
             * <Author>
             *   <Name>N1</Name>
             * </Author>
             */
            Console.WriteLine(DoSerializer(c, SerializeMemberType.Property));

            //输出内容如下:
            /*
             * <?xml version="1.0" encoding="utf-16"?>
             * <Author>
             *   <Age>3</Age>
             * </Author>
             */
            Console.WriteLine(DoSerializer(c, SerializeMemberType.Field));

            //输出内容如下:
            /*
             * <?xml version="1.0" encoding="utf-16"?>
             * <Author>
             *   <Age>3</Age>
             *   <Name>N1</Name>
             * </Author>
             */
            Console.WriteLine(DoSerializer(c, SerializeMemberType.All));
        }

        static string DoSerializer(Author author, SerializeMemberType type)
        {
            using (Serializer serializer = new Serializer(typeof(Author)))
            {
                StringBuilder sb = new StringBuilder();
                using (StringWriter sw = new StringWriter(sb))
                {
                    using (XmlTextWriter writer = new XmlTextWriter(sw))
                    {
                        writer.Setting.MemberType = type;
                        serializer.Divide(writer, null, author);
                    }
                }
                return sb.ToString();
            }
        }
    }
}
版本信息

.NET Framework

支持版本:4.5, 4.0, 3.5, 2.0

.NET Standard

支持版本:2.0, 1.3, 1.0
参见