在MailTo链接主题中使用Razor(Razor ASP.NET MVC)

时间:2016-05-16 20:11:22

标签: asp.net-mvc razor

我正在尝试使用来自html页面的Razor在mailTo链接中动态生成主题。带有数字的Razor是@ Model.Number,我能够在链接中嵌入数字,但不能在链接的主题部分嵌入。

如下面的代码所示,将Razor放在链接的主题部分会导致电子邮件链接打开,主题是字面上写出@ Model.Number。把它放在?subject部分之前允许我嵌入它。有没有办法在电子邮件链接的主题中使用@ model.Number剃刀?

<a href="mailto:email@test.com?subject=Policy%20@Model.Number">@Email us</a>

(请注意:我的问题与其他类似问题不同,因为他们不会尝试将Razor嵌入链接的主题部分)

2 个答案:

答案 0 :(得分:1)

动态值@Model.Number需要使用括号进行转义,以防止将其解析为文字字符串,如下所示:

<a href="mailto:email@test.com?subject=Policy%20@(Model.Number)">@Email us</a>

答案 1 :(得分:0)

您可以尝试:

<a href='@("mailto:email@test.com?subject=Policy%20" + @Model.Number)'>@Email us</a>

<a href='@(String.Format("{0}{1}", "mailto:email@test.com?subject=Policy%20", @Model.Number)'>@Email us</a>