Comment voudrait une classe qui retournera un format JSON.
Cette méthode fonctionne très bien dans le contrôleur , Mais lorsque je veux mettre dans une classe, l’objet Json ne semble pas exister.
public JsonResult Test()
{
//Error 1 The name 'Json' does not exist in the current context C:\inetpub\wwwroot\mvcinfosite\mvcinfosite\Validation\ValidationClass\BaseValidator.cs 66 20 mvcinfosite
return Json(new { errMsg = "test" });
}
Je veux mettre ce code dans une classe simple. Je veux pouvoir appeler cette méthode dans beaucoup de contrôleurs.
Merci.
MODIFIER
Ceci est ma classe (Où le code ne fonctionne pas)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using mvcinfosite.Models;
using mvcinfosite.Base;
using System.Web.Mvc;
public class BaseValidator
{
public JsonResult Test()
{
return Json(new { errMsg = "test" });
}
}
Json()
est une méthode sur le contrôleur de base qui renvoie un JsonResult. Vous devez faire la sérialisation vous-même.
return new JavaScriptSerializer().Serialize(new { errMsg = "test" });
Vous devrez inclure using System.Web.Script.Serialization
.
return Json(new { errMsg = "test"});
est une méthode pratique sur Controller équivalente à
return new JsonResult(){
Data = new { errMsg = "test"},
JsonRequestBehavior = JsonRequestBehavior.DenyGet
};
Pour moi cela a fonctionné (attention au changement du type de retour en Object):
public Object Test()
{
return new { errMsg = "test" };
}