Pergunta sobre asp.net, asp.net-mvc-3 – Asp.Net MVC3, retornando sucesso JsonResult

6

Eu preciso retornar dados JSON que contenham valor de sucesso (verdadeiro ou falso) também, ele precisa ter mensagem de resultado também.

então eu uso o dicionário para conter dados, mas quando ele retorna aos dados do Jason, ele contém "" (Quot).

JsonResult = new Dictionary<string, string>();
JsonResult.Add("Success", "False");
JsonResult.Add("Message", "Error Message");
return Json(JsonResult);

ela retorna

{"Success":"False","Message":"Error Message"}

mas eu preciso,

{Success:False,Message:"Error Message"} //with out "" (Quot)

Alguém sabe disso?

Obrigado!

Sua resposta

1   a resposta
32
{"Success":"False","Message":"Error Message"}

é um JSON válido. Você pode verificá-loAqui. em jsonlint.com

Você nem precisa de um dicionário para retornar esse JSON. Você pode simplesmente usar uma variável anônima como esta:

public ActionResult YourActionMethodName()
{
   var result=new { Success="False", Message="Error Message"};
   return Json(result, JsonRequestBehavior.AllowGet);
}

Para acessar esses dados do seu cliente, você pode fazer isso.

$(function(){
   $.getJSON('YourController/YourActionMethodName', function(data) {
      alert(data.Success);
      alert(data.Message);
   });
});
contentType: 'aplicativo / json'; também woriking bem mzonerz
Eu vim para escrever isso, embora eu não tivesse usado uma variável, mas essa é a minha preferência :) mattytommo
A chave Success ainda precisa estar entre aspas e seu código faz isso. A menos que o OP tenha um erro de digitação ... ele está pedindo por um JSON inválido. Seu código retorna {"Success": "False", "Message": "Error Message"} BZink
@mattytommo: Eu amo tipos anônimos em c # em cenários como este Shyju
@ BZink: Você está correto. O JSON desse OP é válido. deve ser um problema em seu script de cliente. Eu atualizei minha resposta para mencionar isso. Shyju

Perguntas relacionadas