!{Html.Grid(Model.Results)
.Columns(column =>
{
column.For(x => x.Title).Named("Article Name");
column.For(x => x.Sites);
column.For(x => x.PreviousPath).Named("Previous Path");
column.For(x => x.CurrentPath).Named("Current Path");
column.For(x => x.PreviousUrl).Named("Previous Url");
column.For(x => x.CurrentUrl).Named("Current Url");
column.For(x => x.LogDate).Named("Date");
}
)
.Empty("There are no R301s.")
}
在上面的网格中我有一个CurrentUrl。此URL指向一个网站。我需要将当前URL设为指向同一个URL的超链接。
在我添加的页面上
use namespace="MvcContrib.UI.Grid.ActionSyntax"
有一种添加超链接的Action语法。我认为代码看起来像
column.For(x => x.CurrentUrl).Named(“Current Url”)。Action(href)
需要语法帮助才能在上面的列中添加超链接。
答案 0 :(得分:3)
除非你想使用ActionSyntax,否则你可以独立创建Html.ActionLink,假设你知道你的href有什么值。
如果href是实际的URL(http://www.example.com),则标准HTML适用于Spark:
column.For(c =>
string.Format("<a href='{0}'>{1}</a>", x.Grade, "Previous Url"))
.Named("Column Header")
.DoNotEncode();
如果您根据设置的操作名称和ID(例如指向编辑页面)构建网址:
column.For(c =>
Html.ActionLink("Previous Url",
"Action_Method_Name",
new { controller = "DifferentController", //optional
id = c.YourIdColumnIfRequired //optional
})
.Named("Column Header")
.DoNotEncode();