Обработка данных из .Json - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день. Проблемы с отображением Json в DataGrid. Дано: 2 файлика - 1 config.json
{
  "languages":[
    "en",
    "ru",
    "tr"
  ]
}
и 2 файлик translate.json
{"test":{"en":"Test","ru":"*Test","tr":"*Test"},"mama":{"en":"Mama","ru":"*Mama","tr":"*Mama"},"get_some_desc":{"en":"Get some desc","ru":"*Get some desc","tr":"*Get some desc"},"fraze_for_translate":{"en":"Fraze for translate","ru":"*Fraze for translate","tr":"*Fraze for translate"}}
Необходимо: сделать Wpf app с DataGrig вида: (1столб) en (2столб) ru (3столб) tr _________________| _____________________|__________ test mama get_some_desc fraze_for_translate где ru и tr значения мы можем перезаписывать и сохранять туда же каким то баттоном. Решение: создал 2 класса
        public class Lang
        {
            public string en { get; set; }
            public string ru { get; set; }
            public string tr { get; set; }
        }

        public class RootObject
        {
            public Lang test { get; set; }
            public Lang mama { get; set; }
            public Lang get_some_desc { get; set; }
            public Lang fraze_for_translate { get; set; }
        }
Пытаюсь запихнуть данные в Дата грид и тут застрял, вернее даже запутался начитавшись всякого
string filename = "C:/translates/locale/translates.json";
            var s = File.ReadAllText(filename);
            var data = JObject.Parse(s);
            string datast = data.ToString(Formatting.None);

            datast = "{\"RootObject\":" + datast + "}";
            wrapper w = (wrapper)new JavaScriptSerializer().Deserialize(s, typeof(wrapper));
 
            Dgrid.ItemsSource = w.rootobject;
белиберда какая то выходит... (((

Решение задачи: «Обработка данных из .Json»

textual
Листинг программы
string filename = @"C:\translates\locale\translates.json";
var s = File.ReadAllText(filename);
var phrases = JObject.Parse(s).AsJEnumerable().Select(j => new {
        En = j.First().Value<string>("en"),
        Ru = j.First().Value<string>("ru"), 
        Tr = j.First().Value<string>("tr"),
    }).ToList();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5