2016-07-13 6 views
0

Ich habe eine Klasse wieC# - Klasse wird in den Einstellungen

public class ASetting 
{ 
    public Type AType; 
    public string AString; 
} 

in den Einstellungen meines Projekts nicht serialisiert. Ich möchte nur die Eigenschaft speichern AString. Die Klasse wird nicht gespeichert. Mein Problem scheint die Serialisierung der Eigenschaft AType zu sein. Nachdem verschiedene Möglichkeiten auszuprobieren ich ein wenig bin verwirrt:

auch nicht arbeiten die Eigenschaft wie dies verkapseln:

public class ASetting 
{ 
    private Type AType { get; private set; } 
    public string AString; 
} 

Wenn ich die Eigenschaft privat, wird die Klasse gespeichert und es ist funktioniert.

public class ASetting 
{ 
    private Type AType; 
    public string AString; 
} 

Aber ich brauche die Eigenschaft AType Öffentlichkeit zu haben. Also habe ich versucht, die IgnoreDataMemberAttribute

public class ASetting 
{ 
    [IgnoreDataMember] 
    public Type AType; 
    public string AString; 
} 

zu verwenden, aber das ist auch nicht arbeiten.

Ich lese über die SettingsSerializeAsAttribute - es scheint wie die Attribute der Serialisierung von Einstellungen sind nicht die gleichen wie die System.Runtime.Serialization Attribute.

Wäre groß, wenn jemand eine Idee hat, mein Problem zu lösen - ignorieren Sie die Eigenschaft AType während des Speicherns.

Antwort

0

Haben Sie [NonSerialized] versucht? Hier ist ein Link!

Verwandte Themen