2013-03-20 81 views
0

我試圖連接WebGrid中的條件列中的2 Html.ActionLink。 出頭的那樣:MVC WebGrid條件連接Htlm.ActionLink

@grid.GetHtml(columns:grid.Columns(
    grid.Column("AccountNumber"), 
    grid.Column("ContractNumber"), 
    grid.Column("DisplayName"), 
    grid.Column("IsFinalized"," ",format:(item) => (item.IsFinalized == true) 
    [email protected]<text> @Html.ActionLink("Edit", "Edit", new { accountId = item.AccountNumber}) | @Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }) </text> 
    :@<text> @Html.ActionLink("Validate", "Validate", new { accountId = item.AccountNumber} | @Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }))</text>) 
)) 

回答

2

如果發現使用該解決方案:

new HtmlString() 

所以這個:

grid.Column("IsFinalized"," ",format:(item) => (item.IsFinalized == true) 
    [email protected]<text> @Html.ActionLink("Edit", "Edit", new { accountId = item.AccountNumber}) | @Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }) </text> 
    :@<text> @Html.ActionLink("Validate", "Validate", new { accountId = item.AccountNumber} | @Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }))</text>) 

給出:

grid.Column("IsFinalized", " ", format: item => (item.IsFinalized == true) 
    ? new HtmlString(Html.ActionLink("Edit", "Edit", new { accountId = item.AccountNumber }).ToString() + "|" + Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }).ToString()) 
    : new HtmlString(Html.ActionLink("Validate", "Validate", new { accountId = item.AccountNumber }).ToString() + "|" + Html.ActionLink("Details", "Details", new { accountId = item.AccountNumber }).ToString())