je les classes suivantesla difficulté à obtenir une liste d'une classe personnalisée sérialiser pour user.config
[Serializable()]
public class ColumnList
{
public ColumnList()
{
ListOfColumns = new List<Column>();
}
public ColumnList(string name)
: this()
{
Name = name;
}
List<Column> ListOfColumns { get; set;}
public string Name { get; set; }
//Extra methods cut out.
}
[Serializable()]
public partial class Column
{
public Column()
{
VarName = "";
HeaderName = "";
ItemType = "";
SelectText = "";
Position = 0;
Visable = true;
}
public Column(string varName, string headerName, string itemType, string selectText, int position)
{
VarName = varName;
HeaderName = headerName;
ItemType = itemType;
SelectText = selectText;
Position = position;
Visable = true;
}
public string VarName { get; set; }
public string HeaderName { get; set; }
public string ItemType { get; set; }
public string SelectText { get; set; }
public int Position { get; set; }
public bool Visable { get; set; }
//extra methods cut out.
}
avec ce qui suit dans mon dossier Settings.cs
[global::System.Configuration.UserScopedSettingAttribute()]
public List<ColumnList> ColumnListLists
{
get { return ((List<ColumnList>)(this["ColumnListLists"])); }
set { this["ColumnListLists"] = value; }
}
Donc, fondamentalement, j'ai liste d'une classe, cette classe contient un nom et une liste d'une autre classe. Cette classe a plusieurs chaînes, un booléen et un int. Cependant, après l'exécution de mon programme, mon user.config contient ceci.
<value>
<ArrayOfColumnList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ColumnList>
<Name>Preproduction</Name>
</ColumnList>
<ColumnList>
<Name>Production</Name>
</ColumnList>
<ColumnList>
<Name>Contract Approval</Name>
</ColumnList>
</ArrayOfColumnList>
</value>
Il a le nom de la ColumnList
mais il ne contient pas les éléments Column
. Des suggestions sur ce que je fais mal?
Merci, je suis un idiot. Donnera la réponse acceptée dès que je peux. –