Laden...

Problem mit XML Serializer

Erstellt von micha0827 vor 8 Jahren Letzter Beitrag vor 8 Jahren 1.335 Views
M
micha0827 Themenstarter:in
85 Beiträge seit 2015
vor 8 Jahren
Problem mit XML Serializer

verwendetes Datenbanksystem: XML

Ich versuche eine Klasse:


public class afterbuy_product
    {
        public AfterbuyGlobal afterbuyglobal { get; set; }
        public int MaxCatalogs { get; set; }
    }

    public class AfterbuyGlobal
    {
        public string PartnerID { get; set; }
        public string PartnerPassword { get; set; }
        public string UserID { get; set; }
        public string UserPassword { get; set; }
        public string CallName { get; set; }
        public int DetailLevel { get; set; }
        public string ErrorLanguage { get; set; }
    }

in eine XML Variable zu serialisieren mit folgendem Code:


afterbuy_product obj = new afterbuy_product();

            obj.afterbuyglobal = new AfterbuyGlobal();
            obj.afterbuyglobal.PartnerID = "...";
            obj.afterbuyglobal.PartnerPassword = "...";
            obj.afterbuyglobal.UserID = "...";
            obj.afterbuyglobal.UserPassword = "...";
            obj.afterbuyglobal.CallName = "GetShopCatalogs";
            obj.afterbuyglobal.DetailLevel = 0;
            obj.afterbuyglobal.ErrorLanguage = "DE";
            obj.MaxCatalogs = 100;

            XmlSerializer xmls = new XmlSerializer(typeof(afterbuy_product));

Allerdings ist die Variable xmls leer (ich hatte einen XML String erwartet 😃) Kann jemand helfen ?

Danke Michael

16.834 Beiträge seit 2008
vor 8 Jahren

Also "leer" kann sie nicht sein, weil das bei dem Typ gar nicht geht. Nicht mal null kann sie sein, weil Du sie instanziierst. 😉
Hast Du Dir überhaupt angeschaut, wie der XmlSerializer funktioniert? Denn in der Doku gibts ein Beispiel, das deutlich anders aussieht.

M
micha0827 Themenstarter:in
85 Beiträge seit 2015
vor 8 Jahren

Sehr viele Beispiele im Web habe ich mir angesehen, geholfen hats nicht 😃

16.834 Beiträge seit 2008
vor 8 Jahren

Sorry - aber das glaube ich Dir nicht mal ansatzweise, da man von der Doku nur kopieren muss.
Dahingehend verweis ich Dich auch dort hin.

M
micha0827 Themenstarter:in
85 Beiträge seit 2015
vor 8 Jahren

Vielen Dank, den Fehler habe ich gefunden. Allerdings gibt mir die "Serialize" Methode nur die Möglichkeit in eine Datei zu schreiben, wenn ich das richtig sehe. Ich würde gern die XML Daten weiterverwenden (per http-post an eine API). Muss ich dann die Textdatei wieder auslesen oder gibt es einen Weg direkt in eine Variable zu serializieren ?

Danke

127 Beiträge seit 2015
vor 8 Jahren

Serialisieren muß man nicht zwingend in eine Datei ...
Was du vermutlich willst: c# - Serialize an object to string - Stack Overflow
Zumindest dürfte dir damit der Grundansatz klar sein und du erreichst dein Ziel damit auf jeden Fall.

M
micha0827 Themenstarter:in
85 Beiträge seit 2015
vor 8 Jahren

Vielen Dank, das hat geholfen.