如何解决“无效匿名类型成员减速器”错误

时间:2015-02-10 16:27:44

标签: c# urlhelper

我为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值的代码。

1 个答案:

答案 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"))
})