Intereting Posts
Специальная функция «Открыть сейчас» в часовом поясе Создание и обслуживание zip-файлов с помощью php Измерение расстояния между двумя координатами в PHP gzzle ver 6 post method не является woking Функциональный тестовый сервер Symfony2 с параметром SERVER_NAME Как безопасно записывать данные JSON в файл с помощью PHP Magento – проверка входа администратора и клиента в систему Что такое подходящий заголовок типа контента для файлов JavaScript? Список всех путей многомерного массива Почему все типы данных возвращаются как строки с sqlite3 fetchAll (PDO: FETCH_ASSOC) с PHP? Уведомление PayPal IPN, получающее несколько уведомлений за один и тот же платеж preg_match с международными символами и акцентами Как хранить и извлекать пользовательские переменные сеанса в Drupal 6? Форма представляет с двумя разными ошибками в зависимости от входного значения – 1 не работает как защитить клиентские коды

Возвратите JSON, используя C #, как PHP json_encode

В PHP для возврата некоторого JSON я бы сделал:

return json_encode(array('param1'=>'data1','param2'=>'data2'));

как сделать эквивалент в C # ASP.NET MVC3 простейшим способом?

Вы можете использовать класс JavaScriptSerializer, который встроен в структуру. Например:

 var serializer = new JavaScriptSerializer(); string json = serializer.Serialize(new { param1 = "data1", param2 = "data2" }); 

выходы:

 {"param1":"data1","param2":"data2"} 

Но так как вы говорили о возврате JSON в ASP.NET MVC 3, есть уже встроенные методы, которые позволяют вам напрямую возвращать объекты и иметь базовую инфраструктуру, заботясь о сериализации этого объекта в JSON, чтобы избежать загрязнения вашего кода такой сантехникой.

Например, в ASP.NET MVC 3 вы просто пишете действие контроллера, возвращающее JsonResult :

 public ActionResult Foo() { // it's an anonymous object but you could have used just any // view model as you like var model = new { param1 = "data1", param2 = "data2" }; return Json(model, JsonRequestBehavior.AllowGet); } 

Вам больше не нужно беспокоиться о сантехнике. В ASP.NET MVC у вас есть действия контроллера, которые возвращают результаты действий, и вы передаете модели представления в эти результаты. В случае JsonResult это базовая инфраструктура, которая позаботится о сериализации модели представления, которую вы передали в строку JSON, и в дополнение к тому, что правильно настроил заголовок ответа Content-Type на application/json .

Я всегда использую JSON .Net: http://json.codeplex.com/ и документацию: http://james.newtonking.com/projects/json/help/

Как насчет http://www.json.org/ (см. Список C #)?

Самый простой способ:

 public JsonResult GetData() { var myList = new List<MyType>(); //populate the list return Json(myList); }