private void initialize(SharpSerializerXmlSettings settings) { // PropertiesToIgnore PropertyProvider.PropertiesToIgnore = settings.AdvancedSettings.PropertiesToIgnore; PropertyProvider.AttributesToIgnore = settings.AdvancedSettings.AttributesToIgnore; //RootName RootName = settings.AdvancedSettings.RootName; // TypeNameConverter) ITypeNameConverter typeNameConverter = settings.AdvancedSettings.TypeNameConverter ?? DefaultInitializer.GetTypeNameConverter( settings.IncludeAssemblyVersionInTypeName, settings.IncludeCultureInTypeName, settings.IncludePublicKeyTokenInTypeName); // SimpleValueConverter ISimpleValueConverter simpleValueConverter = settings.AdvancedSettings.SimpleValueConverter ?? DefaultInitializer.GetSimpleValueConverter(settings.Culture, typeNameConverter); // XmlWriterSettings XmlWriterSettings xmlWriterSettings = DefaultInitializer.GetXmlWriterSettings(settings.Encoding); // XmlReaderSettings XmlReaderSettings xmlReaderSettings = DefaultInitializer.GetXmlReaderSettings(); // Create Serializer and Deserializer var reader = new DefaultXmlReader(typeNameConverter, simpleValueConverter, xmlReaderSettings); var writer = new DefaultXmlWriter(typeNameConverter, simpleValueConverter, xmlWriterSettings); _serializer = new XmlPropertySerializer(writer); _deserializer = new XmlPropertyDeserializer(reader); }
/// <summary> /// Xml serialization with custom settings /// </summary> /// <param name = "settings"></param> public Serializer(SharpSerializerXmlSettings settings) { if (settings == null) { throw new ArgumentNullException("settings"); } initialize(settings); }