当前位置: 首页>>代码示例>>C#>>正文


C# PropertyInfo.IsAutoProperty方法代码示例

本文整理汇总了C#中System.Reflection.PropertyInfo.IsAutoProperty方法的典型用法代码示例。如果您正苦于以下问题:C# PropertyInfo.IsAutoProperty方法的具体用法?C# PropertyInfo.IsAutoProperty怎么用?C# PropertyInfo.IsAutoProperty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Reflection.PropertyInfo的用法示例。


在下文中一共展示了PropertyInfo.IsAutoProperty方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: IsSerializableProperty

        public bool IsSerializableProperty(PropertyInfo property)
        {
            // tagged with one of the NotSerialized attributes? no soup for you!
            if (attributes.NotSerialized.Any(property.IsDefined))
                return false;

            // disallow properties with side effects, could be dangerous
            // (you could remove this constraint, if you know what you're doing...)
            if (!property.IsAutoProperty())
                return false;

            // either the getter or setter has to be public
            // otherwise the property has to be marked with an attribute from the SerializeMember array
            if (!(property.GetGetMethod(true).IsPublic ||
                  property.GetSetMethod(true).IsPublic ||
                  attributes.SerializeMember.Any(property.IsDefined)))
                return false;

            // finally, a property is serializable if its type is
            bool serializable = IsSerializableType(property.PropertyType);
            return serializable;
        }
开发者ID:vexe,项目名称:FastSerializer,代码行数:22,代码来源:DefaultSerializationPredicates.cs

示例2: DefaultIsSerializableProperty

        public static bool DefaultIsSerializableProperty(PropertyInfo property)
        {
            if (DontSerializeMemberAttributes.Any(property.IsDefined))
                return false;

            if (!property.IsAutoProperty())
                return false;

            if (!(property.GetGetMethod(true).IsPublic ||
                  property.GetSetMethod(true).IsPublic ||
                  SerializeMemberAttributes.Any(property.IsDefined)))
                return false;

            bool serializable = IsSerializableType(property.PropertyType);
            return serializable;
        }
开发者ID:flatlineteam,项目名称:relic-rush,代码行数:16,代码来源:X20Logic.cs

示例3: IsSerializableProperty

        /// <summary>
        /// A property is serializable if:
        /// - it's not marked with any of the 'DontSerializeMember' attributes
        /// - it's an auto-property
        /// - has a public getter or setter, otherwise must be annotated with any of the 'SerializeMember' attributes
        /// - its type is serializable
        /// - static properties that meet the previous requirements are always serialized in Better[Behaviour|ScriptableObject],
        ///   and in System.Objects if the serializer of use supports it (FullSerialier doesn't)
        /// </summary>
        public override bool IsSerializableProperty(PropertyInfo property)
        {
            if (DontSerializeMember.Any(property.IsDefined))
                return false;

            if (!property.IsAutoProperty())
                return false;

            if (!(property.GetGetMethod(true).IsPublic ||
                  property.GetSetMethod(true).IsPublic ||
                  SerializeMember.Any(property.IsDefined)))
                return false;

            bool serializable = IsSerializableType(property.PropertyType);
            return serializable;
        }
开发者ID:DarrenTsung,项目名称:alien-shooter,代码行数:25,代码来源:SerializationLogic.cs

示例4: CreatePropertyWrapper

        public static IPropertyWrapper CreatePropertyWrapper(PropertyInfo property)
        {
            if (property.IsAutoProperty())
                return CreateFieldWrapper(property.GetBackingField());
            else if (ApplicationUtility.IsAOT)
                return new PropertyWrapper(property);
            else
            {
                var wrapperType = typeof(PropertyWrapper<,>).MakeGenericType(property.DeclaringType, property.PropertyType);

                return (IPropertyWrapper)Activator.CreateInstance(wrapperType, property);
            }
        }
开发者ID:Magicolo,项目名称:PseudoFramework,代码行数:13,代码来源:ReflectionUtility.cs


注:本文中的System.Reflection.PropertyInfo.IsAutoProperty方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。