System.Runtime.Serialization.SerializationException bei Zugriff auf Proxy
-
Hallo,
bei Zugriff auf einen Proxy einer mit [Serializable] gekennzeichneten
Klasse tritt folgende Exception auf:System.Runtime.Serialization.SerializationException
Zusätzliche Informationen: Unzureichender Status zum Deserialisieren des Objekts. Weitere Informationen sind erforderlich.
Wieso? Alle verwendeten Klassen innerhalb der Klasse sind als [Serializable] gekennzeichnet.
Gruß
SlEasy
-
lass mal die Klasse sehen
-
DieKlasse (B) wird instanziiert von einer Klasse(A) die MarshalByRefObj beerbt. A wird sauber serialisiert und deserialisiert. Beim Zugriff auf B über A kommt es zu der besagten Exception.
[Serializable] public class DieKlasse { private string m_Directory; private ComponentList m_Components; public DieKlasse(Type theType, string theDirectory) { m_Directory = theDirectory; m_Components = new ComponentList(); foreach(string aFileName in Directory.GetFiles(m_Directory, "*.dll")) { Assembly aAssembly = Assembly.LoadFrom(aFileName); foreach(Type aType in aAssembly.GetTypes()) if(aType.GetInterface(theType.Name) != null) m_Components.InsertComponent(aType, aAssembly); } } public object LoadComponent(string theComponentName) { return m_Components.CreateComponent(theComponentName);; } public ComponentList ComponentList { get { return m_Components; } } }