2012-08-30 60 views
0

我在DataType.EmailAddress中使用模型。我想在运行时修改地址链接,但它已经自动链接了电子邮件链接,这阻止了我的修改。为什么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> 

为什么电子邮件地址被自动转换为链接的形式?如何阻止它?我想保持数据类型使用验证虽然。

回答

1

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

另外,您需要对subject参数进行网址编码,其中包括Re:之后的空格。

+0

谢谢你的回答。它按我的预期工作。编码主体只有一个包含'+'作为空间替换。任何其他方式来显示空间,因为它是? – San

+0

@三::试试'%20' – SLaks