Пример #1
0
        private static void RegisterInternalSerializableTypes()
        {
            var serializerTypes =
                typeof(BaseConfigurationExtensions).Assembly.GetTypes()
                .Where(t => typeof(Identity <>).IsAssignableFrom(t) || typeof(IMessage).IsAssignableFrom(t))
                .Where(t => !t.IsAbstract);

            AbstractSerializer.RegisterKnownTypes(serializerTypes);
        }
Пример #2
0
        /// <summary>
        /// Register all serializable types - this is needed for some serializers (ProtoBuf for instance).
        /// </summary>
        /// <param name="cfg"></param>
        /// <param name="types"></param>
        /// <returns></returns>
        public static BaseConfiguration SerializableTypes(this BaseConfiguration cfg, IEnumerable <Type> types)
        {
            Condition.Requires(cfg, "cfg").IsNotNull();
            Condition.Requires(types, "types").IsNotNull();

            AbstractSerializer.RegisterKnownTypes(types);
            RegisterInternalSerializableTypes();

            return(cfg);
        }
Пример #3
0
        public static void Initialize()
        {
            Xyperico.Agres.ProtoBuf.SerializerSetup.RegisterInheritance <Identity <Guid>, UserAccountId>();

            var serializerTypes =
                typeof(UserAccountId).Assembly.GetTypes()
                .Where(t => typeof(Identity <>).IsAssignableFrom(t) || typeof(IMessage).IsAssignableFrom(t))
                .Where(t => !t.IsAbstract);

            AbstractSerializer.RegisterKnownTypes(serializerTypes);

            AbstractSerializer.RegisterKnownType(typeof(EMail));
            AbstractSerializer.RegisterKnownType(typeof(UserAccountId));
            AbstractSerializer.RegisterKnownType(typeof(UserAccountCreatedEvent));
            AbstractSerializer.RegisterKnownType(typeof(PasswordChangedEvent));
        }