Esempio n. 1
0
        public IMemberSerializer Get(IMember parameter)
        {
            var converter  = _converters.Get(parameter);
            var access     = _accessors.Get(parameter);
            var alteration = new DelegatedAlteration <object>(access.Get);
            var result     = converter != null
                                             ? Property(alteration, converter, parameter, access)
                                             : Content(parameter, access);

            return(result);
        }
Esempio n. 2
0
        IMemberSerializer Property(IConverter converter, IMember profile, IMemberAccess access)
        {
            var alteration = new DelegatedAlteration <object>(access.Get);
            var serializer = new ConverterProperty <object>(converter, profile).Adapt();
            var member     = new MemberSerializer(profile, access, serializer, new MemberWriter(access, serializer));
            var runtime    = _runtime.Get(profile.Metadata);
            var property   = (IMemberSerializer) new PropertyMemberSerializer(member);

            return(runtime != null
                                       ? new RuntimeSerializer(new AlteredSpecification <object>(alteration, runtime),
                                                               property, Content(profile, access))
                                       : property);
        }