我为UrlHelper创建了一个Extension函数,它简化了参数的写入。它只接受两个字符串参数并返回所需格式的字符串。就我而言,它的工作原理如下:
public static string CustomAction(this UrlHelper helper, string key, string value)
{
return HttpUtility.UrlEncode("(" + key + "=" + value + ")");
}
我现在面临的问题是当我在URL.ACTION中多次使用此函数时,它会给我一个"无效的匿名类型成员减速器"错误。 有人能告诉我怎样才能解决这个问题?
示例:
Url.Action("someAction", "someController", new { where = Url.CustomWhereAction("user.ID", Url.UrlParams("id")), Url.CustomWhereAction("person.ID", Url.UrlParams("id")) })
只是为了澄清:
Url.UrlParams()
是另一个扩展函数,它避免程序员编写用于提取routeData值的代码。
答案 0 :(得分:0)
你有
Url.Action("someAction", "someController", new {
where = Url.CustomWhereAction("user.ID", Url.UrlParams("id")),
Url.CustomWhereAction("person.ID", Url.UrlParams("id"))
})
这是你的意思无效
Url.Action("someAction", "someController", new {
where = Url.CustomWhereAction("user.ID", Url.UrlParams("id")),
where2 = Url.CustomWhereAction("person.ID", Url.UrlParams("id"))
})