我正在尝试创建一个这样的剃刀助手:
@helper Render(IEnumerable<MyItem> items) { <ul> @foreach (var item in items) { <li><a href="@Url.Content(item.Url)">Click</a></li> } </ul> }
这里唯一的问题是System.Web.WebPages.HelperPage(Razor helpers的基类)没有Url属性(类型为UrlHelper)。它有Html(类型为HtmlHelper)但没有Url。
解决方法
Syntax for ASP.Net MVC Phil Haack’s Repeater syntax using Razor (MVC 3)? – Stack Overflow
@helper Render(IEnumerable<MyItem> items) { var url = new System.Web.Mvc.UrlHelper(Context.Request.RequestContext); <ul> @foreach (var item in items) { <li><a href="@url.Content(item.Url)">Click</a></li> } </ul> }
或者,如果使用MVC3 RC2
@helper Render(IEnumerable<MyItem> items) { <ul> @foreach (var item in items) { <li><a href="@Href(item.Url)">Click</a></li> } </ul> }
希望这个帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。