将复杂的 JSON 传递给 WebMethod

Passing complex JSON to a WebMethod

我正在尝试传递具有以下结构的 JSON:

{"var":"{"var1:"val1","var2:"val2",...,"varN:"valN"}"}

我的 JS 函数执行以下 POST 函数:

$.ajax({
    type: "POST",
    url: "MyWebApp.aspx/Foo",
    data:  {"json":"{"var1:"val1","var2:"val2",...,"varN:"valN"}"},
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (msg) {
        alert("2D JSON Test is done")
    }
});

我想知道如何定义 WebMethod 函数原型来接收这样的 JSON?

[WebMethod]
public static void Foo(var json)

or

[WebMethod]
public static void Foo(string json)

or

[WebMethod]
public static void Foo(string[] json)

or

[WebMethod]
public static void Foo(List<string> json)

参考link:sending JSON object successfully to asp.net WebMethod, using jQuery

[WebMethod]
        public static void Foo(object items)
        {
            //break point here
            List<object> lstItems = new JavaScriptSerializer().ConvertToType<List<object>>(items);
        }