ActionLink 使用 T4MVC 和一个 HTML 代码块

Pat*_*ick 1 asp.net-mvc t4mvc razor

有没有办法让这个工作:

@foreach (var item in Model.CategoryListByKeywordsDetails)
{
    <li>
        @Html.ActionLink("ver >", MVC.Ad.ListByCategory(item.Id, (string)ViewBag.keywords))
        {
            <em>@Html.DisplayFor(modelItem => item.SearchCount)</em> @Html.DisplayFor(modelItem => item.Name) <span class="float-right">ver ></span>
        }
    </li>
}        
Run Code Online (Sandbox Code Playgroud)

我想要结果(我放了空格来显示 HTML 代码):

<a href="/Ad/ListByCategory?categoryId=1&keywords=alfa">
    <em>6</em>Carros
    <span class="float-right">ver &gt;</span>
</a>
Run Code Online (Sandbox Code Playgroud)

Ben*_*thy 5

你不能用任何@Html.ActionLink重载来做到这一点。使用@Url.Action内部a标签:

<a href="@Url.Action(MVC.Ad.ListByCategory(item.Id, (string)ViewBag.keywords))">
    <em>@Html.DisplayFor(modelItem => item.SearchCount)</em> @Html.DisplayFor(modelItem => item.Name) 
    <span class="float-right">ver &gt;</span>
</a>
Run Code Online (Sandbox Code Playgroud)