how to read in a list of custom configuration objects

Posted by Johnny on Stack Overflow See other posts from Stack Overflow or by Johnny
Published on 2010-06-06T14:01:43Z Indexed on 2010/06/06 15:02 UTC
Read the original article Hit count: 255

Filed under:
|
|

hi,

I want to implement Craig Andera's custom XML configuration handler in a slightly different scenario. What I want to be able to do is to read in a list of arbitrary length of custom objects defined as:

public class TextFileInfo
{
    public string Name { get; set; }
    public string TextFilePath { get; set; }
    public string XmlFilePath { get; set; }
}

I managed to replicate Craig's solution for one custom object but what if I want several?

Craig's deserialization code is:

public class XmlSerializerSectionHandler : IConfigurationSectionHandler
{
    public object Create(object parent, object configContext, XmlNode section)
    {
        XPathNavigator nav = section.CreateNavigator();
        string typename = (string)nav.Evaluate("string(@type)");
        Type t = Type.GetType(typename);
        XmlSerializer ser = new XmlSerializer(t);
        return ser.Deserialize(new XmlNodeReader(section));
    }
}

I think I could do this if I could get

Type t = Type.GetType("System.Collections.Generic.List<TextFileInfo>")

to work but it throws

Could not load type 'System.Collections.Generic.List<Test1.TextFileInfo>' from assembly 'Test1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

© Stack Overflow or respective owner

Related posts about c#

Related posts about configuration