1
我想調用一個ASP.NET WebAPI方法,並通過類似於$.ajax
POST請求的GET請求傳遞一個序列化的JavaScript對象。除了當JavaScript對象對於網絡有一個空值的時候,它工作得很好,然後它在URL中發送它,如/api/airings/get-airings?networks=
,並且服務器將字符串[]顯示爲具有值爲null的單個項目!如果我刪除了network=
,它就會像我期望的那樣在服務器上顯示爲空。
所以,似乎人們在jQuery中要求有關此行爲的票證,但我想知道我可以做什麼而不使用插件或重寫$ .param邏輯或混淆WebAPI ModelBinder。
http://bugs.jquery.com/ticket/8653
http://bugs.jquery.com/ticket/1814
public class ApiGetAiringsRequest
{
public DateTime? DateStart { get; set; }
public DateTime? DateFinish { get; set; }
public string[] Networks { get; set; }
}
public HttpResponseMessage GetAirings([FromUri] ApiGetAiringsRequest request)
...
document.location.href = "/api/airings/get-airings?" + $.param(request);
這看起來像一個錯誤。請在這裏登錄一個問題:http://aspnetwebstack.codeplex.com/workitem/list/basic –
希望它會在下一個版本中修復並期待屬性路由:-) – Timmerz