fix some bugs and complete ComplexSelector, now can select configuration like using sql statement, support
1, when value is ValueType, support '=','>','<','>=','<=' compare
2, support type compare, like 'value is System.Int32'
3, support like statement using regulate expression, like 'name like 'abc.*''
this select statement can use with directory select statement ,like 'maxco://~/((value is System.Int32) and (value > 3))/*'.
all select statement request in '()'.
it's the first version release. in this version, maxco implement xml file format process and the local file path access, and value serialize the xml format/soap format, it's mean the developer can use sentence like:
IConfig root = XMLConfigSource<FileStreamFactory, SimpleXmlSerializer>.Load(cssFileName);
//load cssFileName using xml format access local file system. value serialize format is xml, like Vs2005 app.config's format.
and this version implement simple configuration search, it like file system's search, Using MRL define.MRL is a Config's path struct define, format from a string, standard mrl string path like: "maxco://config1/config2", it mean get sub configuration which named "config2" from the sub configuration which named "config1" from current configuration. MRL pre-define some path like file system, contains:
'~': top configuration;
'.': current configuration;
'..': parent configuration;
'*': all configuration in this layer.
so, we can using this pre-define-path easy to search some configuration, like:
root.Select("maxco://~/*/*");// get all sub configuration in the third layer
root.Select("maxco://../*/config2");//get the configuration which named 'config2' and it's parent is in current layer
in the next step, we will implement select statement like Sql, like:
root.Select("maxco://~/(value >= 9)");
root.Select("maxco://../(value is System.String)");
in the end, wellcome to use the powerful configuration library "maxco".