遇到标题中所说的问题原因是使用 jQuery AJAX 以 POST 方式调用 Asp.Net Web API 。解决办法请看以下代码中有注释的部分。
public static class WebApiConfig { public static void Register(HttpConfiguration config) { config.Formatters.Clear(); config.Formatters.Add( new JsonMediaTypeFormatter { SerializerSettings = { ContractResolver = new DefaultContractResolver() } } ); // 添加以下语句即可解决问题 config.Formatters.Add( new JQueryMvcFormUrlEncodedFormatter() ); } }