重音字符不显示

Jac*_*ack 5 .net c# email mailmessage

我有一个要求,将电子邮件发送给用户,他可以直接回复电子邮件,并且该电子邮件的内容会发布在他的帐户中。

问题是当用户从他的电子邮件中发布内容时,重音字符没有正确显示。我使用MailMessage类发送电子邮件:

message.BodyEncoding = Encoding.UTF8;
message.SubjectEncoding = Encoding.UTF8;
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,正文和主题都是 UTF8 编码的。但是,当我从电子邮件中发布消息时,口音会转换为 ?。谁能告诉我我错过了什么?

编辑:这有什么关系IsBodyHtml吗?我还没有设置IsBodyHtml为true。这是必须的吗?

Pet*_*hie 3

我发现尽管使用 UTF8 进行编码,但用于正文的默认媒体类型是 text/plain——即 ASCII(即ASCII字符集)。如果您使用IsBodyHtml,它将使用 text/html 媒体类型,该类型将使用ISO-8859-1字符集。