Ich schreibe eine Klasse, die ein Objekt serialisiert und deserialisiert. Ich möchte in der Lage sein, diese Klasse mit jedem Objekt zu verwenden, das ich an sie übergebe.C# Objekt an eine Klasse senden
Wie übergebe ich das Objekt an die Klasse? Ich muss in der Lage sein, auf die Klassenfelder für die Instanz, die ich es sende, zugreifen zu können, und außerdem muss ich auf die Definition der Klasse zugreifen, um den Text wieder in ein Objekt zu deserialisieren.
ex.
//mainpage.cs code
private void sendObjectToSerialize()
{
var db = new DatabaseHandler();
var myCar = new Car();
myCar.Make = "Chevy";
string ObjectString = db.SerializeObject(myCar);
}
private void SendStringToBeDeserialized()
{
String myString = "SomeSerializeString" //this string would have been serialized using above Obect myCar
var db = new DatabaseHandler();
var myCar = new Car();
var myCar = db.DeserializeStringToObject(String,myCar);
}
//Database Handler Code
public string SerializeObject(Object myObject)
{
var myNewObject = new myObject();//doesn't work - error myObject used as a variable not a type
//...serialize the object passed to this function
}
public Object DeserializeStringToObject(String ObjectString ,Object myObject)
{
var myNewObject = new myObject;//error myObject used as a variable not a type
//convert string to Object of type myObject...
return mynewObject;
}
bitte bearbeiten Sie dies und reparieren Sie Ihre schreckliche Formatierung es ist ein Chaos zu lesen .. und Sie brauchen nicht die Eingabe Code hier Tags überhaupt – MethodMan
wurde formatiert, als ich es eingegeben habe. irgendwie passierte das, als ich auf submit klickte. Lassen Sie mich versuchen, es zu korrigieren. –
Sie müssen Ihren Code auch debuggen 'var myNewObject = new myObject;' sollte das nicht 'var myNewObject = new myObject();' auch wenn Sie das Objekt übergeben und Sie haben 'var my NewObject' warum don ' t du es nur dem Param zuweisen, der gerade weitergegeben wird ..? auch wenn show code zeige bitte alle relevanten code .. zum beispiel die class definition von 'Car' möchten sie nachschlagen wie man' Activator.CreateInstance' – MethodMan