2013-05-10 50 views
1

SO社區ASP.NET MVC的ActionLink呈現錯誤

我有以下問題:

如果我呈現這樣一個ActionLink的:

@Html.ActionLink(titleText, 
    Title.Href.TargetAction, 
    Title.Href.TargetController, 
    Title.Href.TargetRouteValues, 
    null) 

所呈現的元素是:

<a href="/eagle/Intervention/Edit_Inv?ID_INV=53165">  19/  2013</a> 

但如果我添加一個對象爲這樣的HTMLAttributes:

@Html.ActionLink(titleText, 
    Title.Href.TargetAction, 
    Title.Href.TargetController, 
    Title.Href.TargetRouteValues, 
    new {target="_blank"}) 

我碰到下面的標記:

<a href="/eagle/Intervention/Edit_Inv?Count=1&amp;Keys=System.Collections.Generic.Dictionary%602%2BKeyCollection%5BSystem.String%2CSystem.Object%5D&amp;Values=System.Collections.Generic.Dictionary%602%2BValueCollection%5BSystem.String%2CSystem.Object%5D" target="_blank">  19/  2013</a> 

什麼是我選擇這裏?

在此先感謝, Silviu。

+0

你能給TargetRouteValues的類型? – Satpal 2013-05-10 09:36:04

+0

RouteValueDictionary – 2013-05-10 09:47:14

回答

1

嗯,這很快!我破解它:

@Html.ActionLink(titleText, 
     Title.Href.TargetAction, 
     Title.Href.TargetController, 
     Title.Href.TargetRouteValues, 
     new Dictionary<string, object> { { "target", "_blank" } }) 

這讓我失望。我沒有提供HTMLAttributes的匿名對象,而是使用了一個IDictionary,現在它就像一個魅力一樣。

謝謝你的關心,但是,尼克,你的解決方案是無效的;)