0
我有一個HTML輔助方法具有以下簽名:更高效地將集合傳遞給MVC.NET HtmlHelpers?建議?
public static string MyActionLink(this HtmlHelper html
, string linkText
, List<KeyValuePair<string, object>> attributePairs
, bool adminLink){}
我還有一個程序,然後這需要所有的屬性對,並將它們合併到標籤的屬性/值對:
ExtensionsUtilities.MergeAttributesToTag(tag, attributePairs);
一切都很好。然而問題是,所述參數
, List<KeyValuePair<string, object>> attributePairs
是在定義有點麻煩,甚至moreso在使用助手方法:
<span class="MySpan">
<%= Html.MyActionLink(Html.Encode(item.Name)
, new List<KeyValuePair<string, object>>
{
Html.GetAttributePair("href", Url.Action("ACTION","CONTROLLER")),
Html.GetAttributePair("Id", Html.Encode(item.Id)),
Html.GetAttributePair("customAttribute1", Html.Encode(item.Val1)),
Html.GetAttributePair("customAttribute2", Html.Encode(item.Val2))
}, false)%>
</span>
(Html.GetAttributePair()
只是返回一個KeyValuePair在試圖整理一些東西)
我只是好奇,現在如果有人可以建議一個不同的(也許更有效的開發友好)方法來達到相同的結果嗎?
謝謝你們
戴夫
嗨達林,對答覆表示感謝。這是一個非常明確的答案,並且它最終的作品...除了現在不能將類型轉換回可以迭代我的ExtensionsUtilities.MergeAttributesToTag(tag,attributePairs)的對象; 一行。我可以看到,雖然匿名類型可能對我的應用程序的其他部分有用,所以我仍然很高興看到您的回覆:-) – DaveDev 2010-02-10 15:40:10
@Darin,謝謝。這很棒。 – DaveDev 2010-03-02 11:57:14