0

我正在使用带有 DataType.EmailAddress 的模型。我想在运行时修改地址链接,但是它已经有自动阻止我修改的电子邮件链接。

@{
    var subject = "";
    if (Model.Name.Length > 30)
    {
        subject = Model.Name.Substring(0, 30) + "...";
    }
    else
    {
        subject = Model.Name;
    }
}
<a href="mailto:@Html.DisplayFor(model => model.email)?subject=Re: @subject">model => model.email</a>

但我得到了

<a href="mailto:&lt;a href=&quot;mailto:emailaddress&quot;&gt;emailaddress&lt;/a&gt;?subject=Re: subject"><a href="mailto:emailaddress">emailaddress</a></a>

代替

<a href="mailto:&lt;a href=&quot;mailto:emailaddress&quot;&gt;emailaddress&lt;/a&gt;?subject=Re: subject">emailaddress</a>

为什么电子邮件地址会自动转换为链接形式?以及如何阻止它?我想保留数据类型以使用验证。

4

1 回答 1

1

您正在尝试打印属性的值:@model.Email
DisplayFor不是你想要的。

此外,您需要对subject参数进行 URL 编码,包括Re:.

于 2012-08-30T15:05:38.030 回答