Можно ли в MVC3 автоматически привязывать объекты javascript к моделям, если в модели есть вложенные объекты? Моя модель выглядит так:
public class Tweet
{
public Tweet()
{
Coordinates = new Geo();
}
public string Id { get; set; }
public string User { get; set; }
public DateTime Created { get; set; }
public string Text { get; set; }
public Geo Coordinates { get; set; }
}
public class Geo {
public Geo(){}
public Geo(double? lat, double? lng)
{
this.Latitude = lat;
this.Longitude = lng;
}
public double? Latitude { get; set; }
public double? Longitude { get; set; }
public bool HasValue
{
get
{
return (Latitude != null || Longitude != null);
}
}
}
Когда я отправляю следующий JSON на свой контроллер, все, кроме «Координат», связывается успешно:
{"Text":"test","Id":"testid","User":"testuser","Created":"","Coordinates":{"Latitude":57.69679752892457,"Longitude":11.982091465576104}}
Вот как выглядит действие моего контроллера:
[HttpPost]
public JsonResult ReTweet(Tweet tweet)
{
//do some stuff
}
Я что-то здесь упускаю или делает новое Функция автоматической привязки поддерживает только примитивные объекты?