在 C# 中使用 SmtpClient 发送电子邮件时出现问题

2024-02-02

我有一个 ASP.Net/MVC 应用程序,我正在尝试发送 HTML 电子邮件。我通过读取带有标记的 HTML 文件,然后替换标记来完成此操作。这部分很好,生成的 HTML 正是我想要的,但是当我发送电子邮件时,我收到的内容看起来像 -

<style type=3D"text/css">=
=0D=0A.styleTitles=0D=0A{=0D=0Afont-weight:=bold;=0D=0A}=0D=0A 
.style1=0D=0A        {=0D=0A 

并且应该看起来像

    <style type="text/css">
    .styleTitles
    {
        font-weight: bold;
    }
    .style1
    {
        height: 15px;
    }

我在网上查看过,似乎找不到发送消息的正确语法。我见过一些解决方案,但似乎没有一个有效。

我当前的测试代码是 -

SmtpClient smtpclient = new SmtpClient();
MailMessage message = new MailMessage();

MailAddress SendFrom = new MailAddress("[email protected] /cdn-cgi/l/email-protection");
MailAddress SendTo = new MailAddress("[email protected] /cdn-cgi/l/email-protection");
MailMessage MyMessage = new MailMessage(SendFrom, SendTo);

var plainView = AlternateView.CreateAlternateViewFromString(msgBody,null,"text/html");
plainView.TransferEncoding = System.Net.Mime.TransferEncoding.SevenBit;
MyMessage.AlternateViews.Add(plainView);
MyMessage.IsBodyHtml = true;
MyMessage.Subject = subjectLine;
MyMessage.Body = msgBody;
smtpclient.Send(MyMessage);

有什么建议么?


也许是这样的:

var plainView = AlternateView.CreateAlternateViewFromString(msgBody, new ContentType("text/plain; charset=UTF-8"));

MyMessage.AlternateViews.Add(plainView);
MyMessage.BodyEncoding = Encoding.UTF8;
MyMessage.IsBodyHtml = true;
MyMessage.Subject = subjectLine;
MyMessage.Body = msgBody;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C# 中使用 SmtpClient 发送电子邮件时出现问题 的相关文章

  • 在 LINQ 查询中进行转换

    是否可以在 LINQ 查询中进行强制转换 为了编译器的缘故 下面的代码并不糟糕 但最好将其放入一个查询中 Content content dataStore RootControl as Controls Content List
  • copy_from_user() 错误:目标大小太小

    我正在为内核模块编写 ioctl 处理程序 我想从用户空间复制数据 当我编译禁用优化的代码时 O0 gflags 编译器返回以下错误 include linux thread info h 136 17 error call to bad
  • 使用管道在父级和子级之间传递整数值

    我对如何正确使用 pipeline 在两个进程之间传递整数值有点困惑 在我的程序中 我首先创建一个管道 然后分叉它 我假设我有 两个 管道 据我了解 这是我的任务 我的父母通过 for 循环检查某个操作的整数值 i 增加计数变量 并将值保存
  • 并行运行多个任务

    我有一个代理列表 每个代理都会访问不同的站点并从站点中提取所需的数据 目前它一次只做一个 但我希望同时运行 10 20 个任务 这样它就可以一次性从 20 个站点下载 而不是只下载一个 这是我目前正在做的事情 private async T
  • 使用 POST 的 HttpWebRequest 的性能

    我有一个用于测试网络服务的小工具 它可以使用 POST 或 GET 调用 Web 服务 使用POST的代码是 public void PerformRequest WebRequest webRequest WebRequest Creat
  • 来自 double 的 static_cast 可以优化分配给 double 吗?

    我偶然发现了一个我认为不必要的功能 并且通常让我感到害怕 float coerceToFloat double x volatile float y static cast
  • 如何在 C++ 中为指针“this”赋值

    在函数中 如何分配this一个新的价值 您可以分配对象this点于 this XY 但你不能分配直接值this this XY Error Expression is not assignable
  • 每个元素的 asp.net Web 表单自定义错误消息

    我创建了一个 Web 应用程序 表单 以及后端 SQL 插入和查询 目前我正在显示所有用户错误消息 div style padding 1em div
  • 从结构调用 C++ 成员函数指针

    我找到了有关调用 C 成员函数指针和调用结构中的指针的信息 但我需要调用结构内部存在的成员函数指针 但我无法获得正确的语法 我在类 MyClass 的方法中有以下代码片段 void MyClass run struct int MyClas
  • 如何以编程方式删除受信任的根证书颁发机构中的证书?

    我需要能够从组织中的每台电脑中删除特定的证书 是的 我可以逐个座位 但我要到周四才能完成 而且我没有人力逐个座位 是否有使用 C 的编程方式来执行此操作 我认为你不需要编写任何 C 看看certmgr exe del http msdn m
  • Visual Studio 2013 调试器显示 std::string 的奇怪值

    我有一个大型的 cmake 生成的解决方案 其中包含许多项目 由于某种原因 我无法查看字符串的内容 因为根据调试器 Bx Buf含有一些垃圾 text c str 正确返回 Hello 该问题不仅仅发生在本地字符串上 返回的函数std st
  • ASP.NET - Crystal Report Viewer 打印按钮在 ASP.NET 中不起作用

    我正在使用 Visual Studio 2008 但我遇到了水晶报告问题 当我单击打印按钮时 它会将我带到弹出窗口 但未找到页面 弹出的网址是 http localhost aspnet client System Web 2 0 5072
  • 为什么连续抛出 2 个异常不会生成无法访问的代码警告?

    为什么以下代码行不会创建编译器警告 void Main throw new Exception throw new Exception 据我所知 编译器应该通知您无法到达第二个抛出异常 这显然是一个编译器错误 它是在 C 3 0 中引入的
  • 将 AutomationID 与 ListView 结合使用

    我正在尝试将 AutomationId 附加到列表视图中的项目 理想情况下 将项目名称绑定到显示的项目
  • g++ / gcc 是否支持 C++20 新的atomic_flag 功能?

    根据参考参数 https en cppreference com w cpp atomic atomic flag c 20 有丰富的 对我来说有用的 支持atomic flag运营 然而 目前尚不清楚 gcc 是否支持这些功能 它们在任何
  • c++ - <未解析的重载函数类型>

    在我的班级里叫Mat 我想要一个将另一个函数作为参数的函数 现在我有下面 4 个函数 但是在调用 print 时出现错误 第二行给了我一个错误 但我不明白为什么 因为第一行有效 唯一的区别是功能f不是班级成员Mat but f2是 失败的是
  • 查找数组中的多个索引

    假设我有一个像这样的数组 string fruits watermelon apple apple kiwi pear banana 是否有一个内置函数可以让我查询 apple 的所有索引 例如 fruits FindAllIndex ap
  • 如何防止 Lotus Notes 用户转发或复制通过 System.Net.Mail 发送的邮件?

    我想使用 SMTP 客户端 uiing microsft net 以 C 作为编程语言发送电子邮件 但是对于通过SMTP客户端发送的电子邮件 我们是否可以添加 禁止转发 或 禁止复制 等安全功能 我不希望电子邮件的收件人转发或复制电子邮件的
  • 如何配置 qt Creator 以显示 C++ 代码而不是反汇编程序?

    昨天我做了很多事情 比如更新 GCC Clang 和重新安装 Qt Creator 今天 在逐步调试我的代码时 调试器显示的是反汇编代码 而不是我编写的 C 代码 紧迫F10 or F11 调试器正在进入汇编代码而不是 cpp nor h我
  • MVC 4 捆绑和缩小是否会进行缓存?

    我想使用 MVC4 的捆绑和模仿功能 但我担心模仿 是否每次客户端请求 css 和 javascript 时 捆绑 模拟过程都会起作用 如果是的话那不是每次都会有CPU开销吗 Quote http www asp net mvc tutor

随机推荐

  • 如何在 R 中生成 data.frame 的相关图? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 这可能是一个简单的问题 我有一个 df 我想在 R 中为我的数据生成一个相关图 head df x y
  • 无法在所有计算机上访问 JAR 中的资源

    我正在编写一个应用程序 特别是 Bukkit Minecraft 服务器的插件 执行此操作需要我从应用程序的 JAR 访问 properties 文件 这是我遇到一个奇怪的问题的地方 当我在我的开发 PC 上测试该程序时 它运行得很好 pr
  • WebMatrix Database.Query 与自定义 CommandTimeout

    考虑以下带有 TestTable 和过程的 TestDb USE TestDb GO DROP TABLE dbo TestTable IF NOT EXISTS SELECT 1 FROM sys tables WHERE name Te
  • GAC 似乎包含两个具有相同名称、版本和公钥令牌的程序集

    我目前正在凝视这一页 http gacviewer cloudapp net Default aspx声称会列出典型 Azure VM 上的 GAC 内容 请注意 以下程序集和许多其他程序集列出了两次 AuditPolicyGPManage
  • 我如何在我的 Connect 4 java 代码中查看获胜者? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我不明白如何在连四中找到获胜者 请告诉我我应该怎么想以及如何在连四中找到获胜者 我应该如何使用 for 循环来找到它们 我应该如何使用
  • BitTorrent 扩展协议

    我正在尝试用java编写自己的bittorrent客户端 这是一个make work项目来刷新我的java技能 我一直停留在开发的某个阶段 尽管有一些用于 BitTorrent 开发的论坛 但它们似乎并不十分活跃 到目前为止我可以执行以下操
  • Android ICS:JNI 错误尝试使用过时的本地引用 0x1

    将我的手机升级到 android 4 03 ics 后 我的游戏不再打开 它只是关闭 设备上没有任何错误消息 在 eclipse 上也有此消息 04 02 16 55 27 672 E dalvikvm 26884 JNI ERROR ap
  • VIM 在quickfix中搜索模式

    基本上我需要创建一个快速修复缓冲区 列出与正则表达式匹配的所有行 什么是最好的方法 全局命令可能不是最好的 但我认为它应该可用 全局命令的输出是完美的 但我需要它超级链接匹配的线 您也可以不使用全局命令并坚持使用内置命令 使用 vimgre
  • 在response.sendRedirect()中传递参数 - JSP

    我是网络技术新手 我正在尝试编写一个简单的程序 要求用户输入名称 如果有效 则页面重定向到另一个 jsp 文件 RedirectIfSuccessful jsp 如果无效则页面重定向到 RedirectIfFailed jsp 我正在使用r
  • 有没有办法访问 Skype IM 日志?

    我尝试查看 C Users name AppData Roaming Skype 发现一个名为 chatsync 的文件夹 其中有一些神秘的文件夹 其中的文件以 dat 结尾 我几乎可以肯定这些是聊天日志 但我不知道如何正确打开这些文件 记
  • 指定为定义者的 MySQL 用户不存在

    我正在尝试使用 php 调用存储过程 前一天这是有效的 但今天我收到一个错误 指定为定义者的用户 用户名 前一天的 ip 不存在 该程序位于主机中 我通过 cpanel 的远程 MySql 授予我的 IP 访问权限 我使用的代码是正确的 取
  • Haskell 中类型和数据类型有什么区别?

    我对 a 之间的区别有点困惑type and a 数据类型在哈斯克尔 从我遇到的文献中我得到的印象是它们是不同的概念 Type and 数据类型指的是完全相同的概念 Haskell 关键字type and data但有所不同 data允许您
  • 如何使用 Gson 反序列化带有可选字段的 json

    我使用 Gson 使用以下代码从给定 API 反序列化 JSON 字符串 Gson gson new Gson Map
  • Codeigniter URL 重写

    我正在使用以下内容htaccess脚本以便我可以隐藏index php来自 URI RewriteEngine on RewriteCond 1 index php resources assets robots txt RewriteCo
  • 如何使具有自定义布局的操作按钮的样式类似于 Android 3.0+ 中的标准操作按钮

    我在使用 honeycomb 操作栏中的自定义操作按钮时遇到了一些麻烦 我正在添加一个使用自定义布局的菜单项 使用 android actionLayout 属性 自定义布局的原因是我想要一个具有两行可以动态更新的文本的按钮 但是 我仍然希
  • 资源 -> 当前项目触发器已从 Apps 脚本代码编辑器中消失

    我使用 资源 gt 当前项目 触发器来控制某些项目的执行时间 例如 我的一些项目会每天早上 4 点左右更新电子表格 现在 当我单击 资源 时 当前项目触发器选项消失了 发生了什么 这个更改是在最后一天左右进行的 因为上次我在做一个项目时它就
  • 采用无服务器的 MoonMail Lambda 架构

    我一直在研究这个项目 因为让整个系统成为 Lambda 函数集合的想法似乎非常有吸引力 事实上 几年前我编写了一些软件 其功能与 MoonMail 几乎相同 并且由于某些规格发生了变化而需要更新 我正在评估将我的软件移植到 Lambda 或
  • concatMap 的作用是什么? [复制]

    这个问题在这里已经有答案了 什么是concatMap做 我知道什么concat and map做 是两者放在一起还是完全不同的功能 是的concatMap函数只是concat and map放在一起 由此得名 将函数放在一起只是意味着组合它
  • 如何使用 C99 标准类型在大多数平台上实现最大的可移植性和效率?

    首先 这是我对这个问题的理解和认为是正确的 对单个变量使用快速数据类型 例如计数器或for循环索引 例如 define LOOP COUNT 100U uint fast8 t index for index 0 index lt LOOP
  • 在 C# 中使用 SmtpClient 发送电子邮件时出现问题

    我有一个 ASP Net MVC 应用程序 我正在尝试发送 HTML 电子邮件 我通过读取带有标记的 HTML 文件 然后替换标记来完成此操作 这部分很好 生成的 HTML 正是我想要的 但是当我发送电子邮件时 我收到的内容看起来像