I am sending JSON objects from client but when I get my model all properties bind with default value.
I try some ways for example I got data as string but no results my expected. So how can i solve this?
Web API Config
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;
config.Formatters.Remove(config.Formatters.XmlFormatter);
}
Model
[Serializable]
public class WorkerPuantaj
{
public int workT { get; set; }
public int PDay { get; set; }
public int PMonth { get; set; }
public int PYear { get; set; }
public int worker { get; set; }
}
Client Request
$.ajax({
url: "/api/BuildingApi/AddPuantajItems",
dataType: "json",
contentType: "application/json; charset=utf-8",
type: 'POST',
data: JSON.stringify(jsonData),
success: function (data) {
alert("oldu");
},
error: function (a, b, c) {
alert("olmadı");
}
});
JSON Being Sent
"[{"workT":1,"PDay":20,"PMonth":4,"PYear":2014,"worker":3},{"workT":2,"PDay":21,"PMonth":4,"PYear":2014,"worker":3},{"workT":3,"PDay":22,"PMonth":4,"PYear":2014,"worker":3}]

AddPuantajItemsasList<WorkerPuantaj>instead ofWorkerPuantaj[].