Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst C-Sharp Klasse als Parameter an Function übergeben

Mitglied: mayho33

mayho33 (Level 2) - Jetzt verbinden

12.02.2015, aktualisiert 23:07 Uhr, 1126 Aufrufe

Hallo @ All

Ich beiße mir schon wieder die Zähne aus und hoffe aufs Neue auf eure Unterstützung mit folgender Frage:

Ich habe 2 Assemblies. in dem einen bereite ich eine klasse auf zum serialisieren in eine XML. Im anderen Assembly (eine dll) möchte ich eine Function bereitstellen die das Serialisieren der Klasse übernimmt.
Wie bekomme ich also meine Klasse als Parameter an die Function in der DLL übergeben damit ich sie serialisieren kann??

Im gleichen Assembly mache ich das z.b so:

01.
[Serializable()] 
02.
    [XmlRoot("Config", Namespace = "http://standards.iso.org/iso/19770/-2/2009/schema.xsd", IsNullable = false)] 
03.
    public class meineKlasse 
04.
05.
       [XmlElement("name")] 
06.
        public string prod_name; 
07.
 
08.
        [XmlElement("version")] 
09.
        public string prod_version; 
10.
11.
 
12.
public void DoIt() 
13.
14.
    MeineKlasse mk = new MeineKlasse(string FilePath); 
15.
    mk.prod_name= "irgendwas"; 
16.
    mk.prod_version= "123"; 
17.
 
18.
    using (StreamWriter sw = new StreamWriter(FilePath)) 
19.
20.
        using (TextWriter writer = sw) 
21.
22.
            XmlSerializer ser = new XmlSerializer(typeof(MeineKlasse )); 
23.
            ser.Serialize(writer, mk); 
24.
25.
26.
27.
 

Wenn ich das so umsetze wie oben beschrieben sollte ich die Klasse doch als Object übergeben damit ich sie in der Function im anderen Assembly weiterverarbeiten kann. Bekomme es aber nicht gebacken.

Mein Versuch in etwa so:
01.
public void FunctionImAnderenAssembly(Object classModel, string filePath) 
02.
03.
    using (StreamWriter sw = new StreamWriter(filePath)) 
04.
05.
        using (TextWriter writer = sw) 
06.
07.
            XmlSerializer ser = new XmlSerializer(typeof(classModel)); 
08.
            ser.Serialize(writer, mk); 
09.
10.
11.
}
Sache wie hier beschrieben funktionieren leider auch nicht, oder ich verstehe es nicht:
http://stackoverflow.com/questions/2194949/how-to-use-class-name-as-par ...

Danke für die Unterstützung! Bin für jeden Hinweis Dankbar

Grüße, mayho

UPDATE:

Habe es geschaft! Der Knoten im Hirn ist weg:
01.
public void FunctionImAnderenAssembly(Object modelClass, string outputFile) 
02.
03.
    Object objClass = modelClass; 
04.
    using (FileStream fStream = File.Open(outputFile, FileMode.Create)) 
05.
06.
            XmlSerializer ser = new XmlSerializer(modelClass.GetType()); 
07.
            ser.Serialize(fStream, objClass); 
08.
        }     
09.
10.
 
Gn8, Mayho
Ähnliche Inhalte
C und C++

C-Sharp - Event durch eine Klasse durchreichen?

Frage von mabue88C und C++1 Kommentar

Hallo, ich habe ein Projekt, bei dem eine Klasse mehrere untergeordnete Klassen besitzen. Nehmen wir einfach mal an, dass ...

C und C++

Parameter mit argv übergeben in C-Programm

gelöst Frage von djevil-adC und C++12 Kommentare

Hallo, ich mochte einen Parameter an eine Variable übergeben: Wenn ich printf(argv 1 ); aufrufe funktioniert es, wenn ich aber ip.ki.wVk ...

Batch & Shell

Abfrage function und weitergabe der Parameter

gelöst Frage von complexBatch & Shell6 Kommentare

Hallo zusammen, bin leider noch blutiger anfänger im Bereich Powershell. Zu meinem Problem: Ich möchte ein Script schreiben, dass ...

C und C++

C Sharp: Timer stoppen aus einer anderen Klasse heraus

gelöst Frage von Heinz2511C und C++1 Kommentar

Hallo, ich benutze C# mit Visual Studio 2012. Ich habe folgendes Problem: Ich habe eine Form (formStart), die ein ...

Neue Wissensbeiträge
Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 38 MinutenAdministrator.de Feedback4 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 17 StundenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Sicherheit

Intel gibt neue Spectre V2-Microcode-Updates frei (20.02.2018)

Information von kgborn vor 1 TagSicherheit

Intel hat zum 20. Februar 2018 weitere Microcode-Updates für OEMs freigegeben, um Systeme mit neueren Prozessoren gegen die Spectre ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...