MVC C# 列出带有 mailto 的电子邮件:来自数据库的 {variable}

MVC C# List Email with a mailto: {variable} from the database

我有一个视图页面,我在其中列出了数据库中的用户名和他们的电子邮件地址,我想知道如何显示电子邮件,以便在单击它时打开 Outlook 邮箱并发送电子邮件至该邮箱地址:

这是我的观点:

@model IEnumerable<Comtrex_ICU.Models.UserProfile>


@{
    ViewBag.Title = "UserTable";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2 class="admin-home-link orange-titles">@Html.ActionLink("User Information", "AdminIndex")</h2>
<p>&nbsp;</p>

@foreach (var item in Model)
{

        <p>@Html.DisplayFor(modelItem => item.UserName) | @Html.ActionLink("<a href=mailto:"(modelItem => item.Email)">(modelItem => item.Email)</a>")</p>


}

有人知道正确的语法吗?

您正在将 <a> 标记作为参数传递给 Html.ActionLink,这不是它期望接收的参数。相反,您可以完全省略 Html.ActionLink,只构建 <a> 标签,如下所示:

<p>@Html.DisplayFor(modelItem => item.UserName) | <a href="@string.Format("mailto:{0}", item.Email)">@item.Email</a></p>

请注意,Html.ActionLink 将为您生成整个 <a> 标签,当您想要生成一个 link 将在您的一个控制器上执行操作时使用所以这并不真正适合你正在尝试做的事情,这就是为什么不需要它。