Два способа справиться с этим.
1) Вы можете создать метод расширения для HtmlHelper, как показано ниже.
public static MvcHtmlString CreateListLink(this HtmlHelper helper, string href, string linkName)
{
return new MvcHtmlString(string.Format("<li><a href=\"{0}\">{1}</a></li>", href, linkName));
}
, и вы можете использовать его, как показано ниже
@Html.CreateListLink("javascript:alert('yada yada yada')", "Test Me")
, который будет генерировать HTML-текст, подобный этому
<li>
<a href="javascript:alert('yada yada yada')">Test Me</a>
</li>
2) Вы можете быть более изощренными с новыми функциями Asp.net MVC и использовать синтаксис @helper razor
@helper MyHelper(string href, string linkName){
<li><a href="@href">@linkName</a></li>;
}
@MyHelper("javascript:alert('I am from razor..!!')", "hi")
YouМожно также создать папку App_Code и все extention.cshtml в этой папке и добавить вышеупомянутый помощник в файл.
Подробнее: http://www.asp.net/mvc/videos/mvc-3/mvc-3-razor-helpers