Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Frage Entwicklung Visual Studio

Mitglied: mayho33

mayho33 (Level 2) - Jetzt verbinden

12.02.2015, aktualisiert 23:07 Uhr, 1085 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
Windows Server
gelöst Eventlog gesperrtes Konto, Konto als Parameter übergeben (10)

Frage von pablovic zum Thema Windows Server ...

Windows Server
gelöst Server 2012 rdweb .rdp Parameter (1)

Frage von bGn zum Thema Windows Server ...

C und C++
C-sharp andere Scrollbar hinzufügen (2)

Frage von Yanmai zum Thema C und C ...

C und C++
C-sharp ZIP-Ordner an PHP senden (9)

Frage von Yanmai zum Thema C und C ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (15)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (14)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Rechtliche Fragen
Hotspot rechtssicher betreiben? (14)

Frage von xSiggix zum Thema Rechtliche Fragen ...