Я просто использовал XmlWriter для создания некоторого XML для отправки обратно в ответ HTTP. Как бы вы создали строку JSON. Я предполагаю, что вы просто используете string Builder для построения строки JSON, и они форматируют ваш ответ как JSON?
238
Ответы:
Вы можете использовать класс JavaScriptSerializer , проверьте эту статью, чтобы создать полезный метод расширения.
Код из статьи:
Использование:
источник
Использование Newtonsoft.Json делает это действительно проще:
Документация: Сериализация и десериализация JSON
источник
string json = JsonConvert.SerializeObject(new { "PropertyA" = obj.PropertyA });
."PropertyA"
бытьPropertyA
?»string json = JsonConvert.SerializeObject(new { PropertyA = obj.PropertyA });
без двойных кавычекPropertyA.
Эта библиотека очень хороша для JSON из C #
http://james.newtonking.com/pages/json-net.aspx
источник
Одновременно используйте библиотеки Newtonsoft.Json и Newtonsoft.Json.Linq .
источник
Этот фрагмент кода использует DataContractJsonSerializer из System.Runtime.Serialization.Json в .NET 3.5.
источник
Взгляните на http://www.codeplex.com/json/ для проекта json-net.aspx. Зачем заново изобретать колесо?
источник
Вы также можете попробовать мой ServiceStack JsonSerializer - это самый быстрый сериализатор .NET JSON на данный момент. Он поддерживает сериализацию DataContracts, любых типов POCO, интерфейсов, объектов с поздним связыванием, включая анонимные типы и т. Д.
Основной пример
Примечание. Используйте MicrosoftSoftizer JavaScriptSerializer только в том случае, если для вас не важна производительность, поскольку мне пришлось исключить ее из своих тестов, поскольку она в 40–100 раз медленнее, чем в других сериализаторах JSON.
источник
Если вам нужен сложный результат (встроенный), создайте свою собственную структуру:
и тогда вы можете получить строку JSON с вызовом
Результат будет таким:
Надеюсь, поможет!
источник
Если вы не можете или не хотите использовать два встроенных сериализатора JSON ( JavaScriptSerializer и DataContractJsonSerializer ), вы можете попробовать библиотеку JsonExSerializer - я использую ее в ряде проектов и работает довольно хорошо.
источник
Если вы пытаетесь создать веб-сервис для передачи данных через JSON на веб-страницу, рассмотрите возможность использования набора инструментов ASP.NET Ajax:
http://www.asp.net/learn/ajax/tutorial-05-cs.aspx
Он автоматически преобразует ваши объекты, обслуживаемые через веб-сервис, в json и создаст прокси-класс, который вы сможете использовать для подключения к нему.
источник
DataContractJsonSerializer будет делать все для вас с тем же легко , как XMLSerializer. Его тривиально использовать в веб-приложении. Если вы используете WCF, вы можете указать его использование с атрибутом. Семейство DataContractSerializer также очень быстро.
источник
Я обнаружил, что вам не нужен сериализатор вообще. Если вы возвращаете объект в виде списка. Позвольте мне использовать пример.
В нашем asmx мы получаем данные, используя переменную, которую мы передали
Затем, используя jquery, мы получаем доступ к сервису, передавая эту переменную.
И мы получаем наш ответ.
источник
Кодирование использования
Простой объект в массив JSON EncodeJsObjectArray ()
Результат: [[29, "mike"], [5, "dummy"]]
Довольно использование
Довольно распечатать JSON Array PrettyPrintJson () метод расширения строки
Результаты:
источник