Comment passez-vous une date (j'en ai besoin à la seconde) pour c # utiliser jquery et mvc3. C'est ce que j'ai
var date = new Date();
$.ajax(
{
type: "POST",
url: "/Group/Refresh",
contentType: "application/json; charset=utf-8",
data: "{ 'MyDate': " + date.toUTCString() + " }",
success: function (result) {
//do something
},
error: function (req, status, error) {
//error
}
});
Je ne peux pas comprendre dans quel format la date doit être, pour que C # puisse la comprendre.
Le format suivant devrait fonctionner:
$.ajax({
type: "POST",
url: "@Url.Action("refresh", "group")",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
myDate: '2011-04-02 17:15:45'
}),
success: function (result) {
//do something
},
error: function (req, status, error) {
//error
}
});
Essayez d'utiliser toISOString (). Il retourne une chaîne au format ISO8601.
Méthode GET
javascript
$.get('/example/doGet?date=' + new Date().toISOString(), function (result) {
console.log(result);
});
c #
[HttpGet]
public JsonResult DoGet(DateTime date)
{
return Json(date.ToString(), JsonRequestBehavior.AllowGet);
}
Méthode POST
javascript
$.post('/example/do', { date: date.toISOString() }, function (result) {
console.log(result);
});
c #
[HttpPost]
public JsonResult Do(DateTime date)
{
return Json(date.ToString());
}
essaye ça
var date = new Date();
$.ajax(
{
type: "POST",
url: "/Group/Refresh",
contentType: "application/json; charset=utf-8",
data: "{ 'MyDate': " + date.getTimezoneOffset() + " }",
success: function (result) {
//do something
},
error: function (req, status, error) {
//error
}
});
En C #
DateTime.Now.ToUniversalTime().AddMinutes(double.Parse(MyDate)).ToString();
J'ai trouvé que je devais envelopper ma chaîne datetime comme ceci:
"startdate": "\/Date(" + date() + ")\/"
Il m'a fallu une heure pour comprendre comment activer le service WCF pour qu'il me renvoie le message d'erreur qui m'indiquait que XD
Il existe une méthode toJSON()
en javascript qui retourne une représentation sous forme de chaîne de l'objet Date. toJSON () est IE8 + et toISOString () est IE9 +. Les deux résultats en YYYY-MM-DDTHH:mm:ss.sssZ
_ format.
var date = new Date();
$.ajax(
{
type: "POST",
url: "/Group/Refresh",
contentType: "application/json; charset=utf-8",
data: "{ 'MyDate': " + date.toJSON() + " }",
success: function (result) {
//do something
},
error: function (req, status, error) {
//error
}
});