我有一个重载actionlink的函数,并且简单地为路由值“ID”添加一个新参数,我在这个地方使用了这个参数。在MVC和htmlAttributes中重载ActionLink
这是到目前为止我的代码:
public static MvcHtmlString ReportActionLink(this HtmlHelper helper, string linkText, string actionName, string controllerName, object routeValues, object htmlAttributes)
{
RouteValueDictionary routeValueDictionary = new RouteValueDictionary(routeValues);
routeValueDictionary.Add("id", HttpContext.Current.Request.RequestContext.RouteData.Values["id"]);
IDictionary<string, object> attrs = new RouteValueDictionary(htmlAttributes);
return helper.ActionLink(linkText, actionName, controllerName, routeValueDictionary, attrs);
}
正如你所看到的,我通过在routeValues,并将其转换为一个字典,并添加我的ID。
,当我将我htmlAttributes并IDictionary的,因为重载方法预计,它不会取代下划线在我的特性,即
data_event =“东西”不会成为数据事件发生的问题= “某事”与匿名类型一样。它用下划线呈现。我想知道这是为什么,如果没有办法转换它?
您可以添加ReportActionLink的示例调用吗? –