Пример #1
0
        private void JsonTest()
        {
            //Proje içerisinde dâhili json ayrıştırıcı içerir, property isimleri için tırnak kullanımı şart koşulmaz
            //Ek olarak tek satırlı ve çok satırlı yorumları destekler, doğrudan bir sınıfa atanabilir/sınıftan jsona çevirilebilir.
            //ExplicitOpetör sayesinde doğrudan string ataması yapılabilir.
            //veya JsonItem item = JsonDecoder.Decode("{item1: 'değer', 'item2': 'değer'}");
            JsonItem item = "{item1: 'değer', 'item2': 'değer'}";
            Dictionary <string, object> keys = new Dictionary <string, object>();

            //Listeye sonradan bir veriyi JSON formatında ekledik.
            item.AddSubItem("{item3: 'değer', item4: 'değer'}");

            //Verilen nesnenin tipine göre içerisine aktarma yapar.
            item.ExportTo(ref keys);

            //Ayrıca dinamik olarakta aşağıdaki şekilde kullanılabilir.
            dynamic jitem = new JsonItem();

            jitem.Item1 = "değer1";
            jitem.Item2 = "değer2";
            jitem.Item3 = "değer3";
            jitem.Item4 = new JsonItem()
            {
            };
            jitem.Item4.Item1 = "değer2";

            string result = jitem.ToString();

            JsonItem      sinifaAtanacak = "{name: 'macmillan', group: 'AR-GE', Value: 12345, Excluded: 'Bu değer atanmayacak'}";
            JsonTestClass testclass      = new JsonTestClass();

            sinifaAtanacak.ExportTo(ref testclass);

            //Aynı sınıfı aşağıdaki şekilde JSON a çevirebilirsiniz.
            JsonItem jsitem    = JsonDecoder.DecodeFrom(testclass);
            string   jsonmetni = jsitem.ToString(); //Veya jsitem.ToJson();
        }