Универсального решения для конвертации данных в формат XML
Это библиотека служебных классов, на библиотеку dll которой можно ссылаться в любом проекте. Библиотека классов будет иметь методы, которые будут принимать данные типа object data в качестве входного параметра, преобразовывать их в XML-файл и хранить в пути к файлу.
Метод должен принимать тип данных объекта (тип данных объекта может напоминать данные любого типа, т. е. определенный пользователем тип данных или объект класса, списка, таблицы данных, формата JSON и т. д.)
Что я уже пробовал:
Я создал этот метод, который возвращает правильный результат для
datatable
и list
но не для JSON
тип данных:public static string GetXMLFromObject(object o) { StringWriter sw = new StringWriter(); XmlTextWriter tw = null; try { XmlSerializer serializer = new XmlSerializer(o.GetType()); tw = new XmlTextWriter(sw); serializer.Serialize(tw, o); } catch (Exception ex) { throw ex; //Handle Exception Code } finally { sw.Close(); if (tw != null) { tw.Close(); } } return sw.ToString(); }
Любые зацепки будут высоко оценены.
CHill60
Что вы подразумеваете под "неудачей" - что происходит
ComplexValidate
Я получаю данные JSON в одной строке, например так:
<что-нибудь>'?xml': {
'@версия': '1.0',
'@standalone': 'no'
},
"корень": {
"человек": [
{
'@id': '1',
"имя": "Алан",
'url': 'http://www.google.com'
},
{
'@id': '2',
"имя": "Луи",
'url': 'http://www.yahoo.com'
}<anything: close tag не принимается здесь>
F-ES Sitecore
JSON-это просто строка. Если вы хотите сохранить его как объект со свойствами, вам нужно преобразовать JSON в объект, а затем сериализовать его. Однако в этом мало смысла, если это строка JSON, то просто сохраните строку такой, какая она есть, не нужно ее сериализовывать. Сериализация предназначена для преобразования объектов в формат, который может быть сохранен (обычно текстовый или двоичный), но JSON уже находится в этом формате.