我编写了一个C#MVC 5互联网应用程序,并对ActionLink
中的View
提出了疑问。
我有以下代码:
<td>
@Html.DisplayFor(modelItem => item.mapLocations.Count)
</td>
是否可以为上面显示的值创建ActionLink
?
提前致谢
修改
我尝试过以下代码:
@Html.ActionLink(item.mapLocations.Count, "Index", "MapLocation", new { mapCompanyid = item.Id }, null)
我收到如下编译错误:
Compiler Error Message: CS1928: 'System.Web.Mvc.HtmlHelper<CanFindLocation.ViewModels.MapCompaniesViewModel>' does not contain a definition for 'ActionLink' and the best extension method overload 'System.Web.Mvc.Html.LinkExtensions.ActionLink(System.Web.Mvc.HtmlHelper, string, string, string, object, object)' has some invalid arguments
EDIT2
我是否需要DisplayFor代码才能在ActionLink中显示值?
也许是这样的:
@Html.ActionLink(Html.DisplayFor(modelItem => item.mapLocations.Count), "Index", "MapLocation", new { mapCompanyid = item.Id }, null)
答案 0 :(得分:1)
这将有效: -
@Html.ActionLink(item.mapLocations.Count, "// action name //", "// controller name //", new{ mapCompanyid = item.Id }, new{ // html attributes // })
只需匹配您的Actionlink,其结构应如下所示: -
Html.ActionLink(item.mapLocations.Count, // <--Title
"Index", // <-- ActionMethod
"MapLocation", // <-- Controller Name.
new { mapCompanyid = item.Id }, // <-- Route arguments.
null // <-- htmlArguments.
)