На самом деле этот метод уже существует для вас.
Html.RouteLink(string LinkText, string routeName, RoutevalueDictionary routeValues)
Единственное, что вам нужно сделать, это превратить ваш IDictionary в RouteValueDictionary, который опять-таки довольно прост как конструктор дляRVD может взять IDictionary, который избавляет вас от выполнения цикла foreach в вашем примере.
Итак, в конечном итоге все, что вам нужно, это
Html.RouteLink(string LinkText, string routeName, new RoutevalueDictionary(parameters) )