MongoDB.Bson.Serialization.BsonMemberMap.SetSerializer C# (CSharp) Метод

SetSerializer() публичный Метод

Sets the serializer.
public SetSerializer ( IBsonSerializer serializer ) : BsonMemberMap
serializer IBsonSerializer The serializer.
Результат BsonMemberMap
        public BsonMemberMap SetSerializer(IBsonSerializer serializer)
        {
            if (_frozen) { ThrowFrozenException(); }
            _serializer = serializer;
            return this;
        }

Usage Example

        /// <summary>
        /// Applies the specified member map convention.
        /// </summary>
        /// <param name="memberMap">The member map convention.</param>
        public void Apply(BsonMemberMap memberMap)
        {
            Func<Type, IBsonSerializer> converter = t =>
                {
                    if (t == typeof(DateTime))
                        return new DateTimeSerializer(DateTimeKind.Local);
                    else if (t == typeof(DateTime?))
                        return new NullableSerializer<DateTime>(new DateTimeSerializer(DateTimeKind.Local));
                    return null;
                };

            IBsonSerializer serializer = null;
            switch (memberMap.MemberInfo.MemberType)
            {
                case MemberTypes.Property:
                    PropertyInfo propertyInfo = (PropertyInfo)memberMap.MemberInfo;
                    serializer = converter(propertyInfo.PropertyType);
                    break;
                case MemberTypes.Field:
                    FieldInfo fieldInfo = (FieldInfo)memberMap.MemberInfo;
                    serializer = converter(fieldInfo.FieldType);
                    break;
                default:
                    break;
            }

            if (serializer != null)
                memberMap.SetSerializer(serializer);
        }
All Usage Examples Of MongoDB.Bson.Serialization.BsonMemberMap::SetSerializer