我可以将System.Net.MailMessage传递给WCF服务吗? [英] Can I pass a System.Net.MailMessage to a WCF service?

查看:96
本文介绍了我可以将System.Net.MailMessage传递给WCF服务吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想设置一个WCF服务来发送电子邮件. System.Net.MailMessage似乎不是可序列化的,并且不能在[DataContract]

I'd like to setup a WCF service to send emails. The System.Net.MailMessage doesn't seem to be serializable, and cannot be passed in a [DataContract]

我收到的错误是

键入"System.Net.Mail.MailAddress" 无法序列化.考虑标记 它与DataContractAttribute

Type 'System.Net.Mail.MailAddress' cannot be serialized. Consider marking it with the DataContractAttribute

有什么建议吗?

推荐答案

传递给WCF服务的任何内容都必须是XML或二进制可序列化的.

Whatever you pass to a WCF service needs to be either XML or binary serializable.

经典"消息传递方法是:

A "classic" messaging approach would be:

  1. 创建一个简单的DataContract类,该类具有MailMessage的所有必需属性
  2. 在调用服务之前,在DataContract类的新实例中设置MailMessage的所有属性
  3. 通过DataContract调用服务
  4. 在服务内部,创建一个新的MailMessage实例,并将属性分配给它,然后发送给它

这篇关于我可以将System.Net.MailMessage传递给WCF服务吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆