1

SO社区

我有以下问题:

如果我像这样渲染 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>

我在这里有什么选择?

在此先感谢西尔维。

4

1 回答 1

1

嗯,这很快!我破解了它:

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

这让我出去了。我没有为 HTMLAttributes 提供匿名对象,而是使用了一个 IDictionary,它现在就像一个魅力。

感谢您的关注,但是,尼克,您的解决方案无效;)

于 2013-05-10T09:31:32.367 回答