将电子邮件列表作为密件抄送在链接mailto标记(在asp.net mvc模型中列出)客户端

时间:2017-08-24 13:51:09

标签: c# html asp.net-mvc mailto

我已经研究过这些问题:

How do I set up mailto for bcc only

how to open outlook on click of email hyperlink

但是他们没有回答我的问题,因为我试图做的是打开默认的电子邮件客户端(通常是Outlook,但也可能是gmail,所以它必须同时使用)以及目的地列表和所有目的地应该作为密送。由于列表不断变化,我无法逐一将它们放置

注意:这个项目是在asp.net mvc 5中制作的,模型包含的列表 我希望发送的目的地,并有一个名为电子邮件的字段(我只放置页面的相关代码)和垃圾邮件不会成为一个问题,因为只有管理员可以使用此链接。(我知道Mailto有时会被滥用垃圾邮件发送者)

以下是我尝试过的示例,但我只是想知道如何在将字符串放入标记之前正确格式化字符串。因此,如果有比这更好的方法,我不介意修改逻辑。

@model List<Inscription>   
string Destinations= "mailto:?bcc=";
foreach (var Inscription in Model.ToList())
{
    Destinations = Destinations + Inscription.Email + ",";
}


<a  class="btn btn-default" href="@Destinations">Send Email to all</a>

它只是在Outlook中看到它们并且我没有看到它们没有发送电子邮件(我测试了多次)

我很确定它只是格式化的错误或类似的东西,但我无法看到它

1 个答案:

答案 0 :(得分:1)

正如@James Thorpe所说,前景需要一个&#34 ;;&#34;在gmail需要时分离电子邮件&#34;,&#34;所以不要只是有一个简单的按钮,它会打开一个模态,询问客户是否使用outlook或gmail

我会这样做:

@model List<Inscription>   
string DestinationsGmail= "mailto:?bcc=";
string DestinationsOutlook= "mailto:?bcc=";
foreach (var Inscription in Model.ToList())
{
 DestinationsGmail = DestinationsGmail + Inscription.Email + ",";
  DestinationsGmail = DestinationsOutlook + Inscription.Email + ";";
}

<a id="OpenModel" class="btn btn-default" data-target="#basicmodal" data-toggle="modal">Choice of Email Sender</a>

<div class="modal fade" id="basicmodal" tabindex="-1" role="dialog" aria-hidden="true" style="display: none;">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
            <h4 class="modal-title">Which client to use</h4>
        </div>
        <div class="modal-body">
            the links are going to open your default Email Client so choose the one you have :

            <a  class="btn btn-default" href="@DestinationsGmail">Send Email to all with gmail</a>
            <a  class="btn btn-default" href="@DestinationsOutlook">Send Email to all with outlook</a>
        </div>
        <div class="modal-footer">            
        </div>
    </div>
</div>