Kann ich einen System.Net.MailMessage zu einem WCF-Dienst übergeben?
-
22-07-2019 - |
Frage
ich die Einrichtung einen WCF-Dienst möchte E-Mails zu senden. Die System.Net.MailMessage scheint nicht zu sein serializable und kann nicht in einem [DataContract]
weitergegeben werden
Die Störung, die ich erhalte, ist
Typ 'System.Net.Mail.MailAddress' kann nicht serialisiert werden. betrachten Kennzeichnung es mit dem Datacontract
Irgendwelche Vorschläge?
Lösung
Was auch immer Sie zu einem WCF-Dienst übergeben entweder XML oder binär serialisiert werden muss.
Ein "klassischer" Messaging Ansatz wäre:
- Erstellen Sie eine einfache Datacontract-Klasse, die alle erforderlichen Eigenschaften der Mailmessage hat
- Vor dem Aufruf des Service, stellen Sie alle Eigenschaften für die Mailmessage in eine neue Instanz der Datacontract Klasse
- Rufen Sie den Service, vorbei an der Datacontract
- Im Innern des Service, eine neue Instanz der Mailmessage erstellen und die Eigenschaften in zuweisen, dann senden
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow