J'utilise EF pour interroger la base de données en utilisant le type anonyme.Comment formater les données pour json
ici le code que j'utilise pour EF
public JsonResult OverdueEventsCustom()
{
var eventCustomOverdue = _eventCustomRepository.FindOverdueEventsCustom();
return Json(eventCustomOverdue, JsonRequestBehavior.AllowGet);
}
public IQueryable<dynamic> FindOverdueEventsCustom()
{
DateTime dateTimeNow = DateTime.UtcNow;
DateTime dateTomorrow = dateTimeNow.Date.AddDays(1);
return db.EventCustoms.Where(x => x.DateTimeStart < dateTomorrow)
.Select(y => new { y.EventId, y.EventTitle, y.DateTimeStart});
}
Contrôle en utilisant le débogueur que je vois les propriétés est dans ce format
Date = {16/08/2012 00:00:00}
Le resultfor JSON est
[{
"EventId": 1,
"EventTitle": "Homework Math",
"DateTimeStart": "\/Date(1345108269310)\/"
}, {
"EventId": 4,
"EventTitle": "Homework help with Annie",
"DateTimeStart": "\/Date(1345108269310)\/"
}, {
"EventId": 6,
"EventTitle": "Physic laboratory",
"DateTimeStart": "\/Date(1345108269310)\/"
}]
I besoin du json dans ce format
Une idée de ce que je fais mal ici? Merci pour votre aide
articles connexes
http://www.hanselman.com/blog/OnTheNightmareThatIsJSONDatesPlusJSONNETAndASPNETWebAPI.aspx
How do I format a Microsoft JSON date?
Pourquoi avez-vous besoin de la date au format '" (16/08/2012) "'? C'est une limitation du 'JavaScriptSerializer' et il n'y a pas de solution simple voir: http://stackoverflow.com/questions/726334/asp-net-mvc-jsonresult-date-format. Comme une solution alternative, vous pouvez utiliser [Json.Net] (http://james.newtonking.com/projects/json-net.aspx) pour la sérilisation json. – nemesv