JsonGetValue ÇÔ¼ö´Â JSONPath Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© ƯÁ¤ °æ·ÎÀÇ °ªÀ» Á¶È¸ÇÑ´Ù.
string @JsonGetValue(string objectId, string jsonPath);
ÇÔ¼öÀÎÀÚ
string objectId : ´ë»ó JSON °´Ã¼ ID
string key : °ªÀ» Á¶È¸ÇÒ JSONPath Ç¥Çö½Ä
¹Ýȯ °ª
¼º°ø ½Ã °æ·Î¿¡ ÇØ´çÇÏ´Â °ª (¿©·¯ °ªÀÌ Á¶È¸µÇ¸é ½°Ç¥·Î ±¸ºÐµÈ ¹®ÀÚ¿ ¹Ýȯ)
½ÇÆÐ ½Ã ºó ¹®ÀÚ¿
Âü°í. JSONPath Ç¥Çö½Ä ¿¹
$.name: ÃÖ»óÀ§ °´Ã¼ÀÇ
"name" ¼Ó¼º
$.address.city: Áßø °´Ã¼ÀÇ "city" ¼Ó¼º
$.items[0]: ¹è¿ÀÇ Ã¹ ¹øÂ° ¿ä¼Ò
$.items[*]: ¸ðµç ¹è¿ ¿ä¼Ò
$..name: °´Ã¼ Æ®¸®¿¡¼ ¸ðµç "name" ¼Ó¼º
$.items[?(@.price>10)]:
Á¶°Ç¿¡ ¸Â´Â ¹è¿ ¿ä¼Ò (price°¡ 10º¸´Ù Å« ¿ä¼Ò)
¿¹Á¦ )
//¾Æ·¡ JSON ¹®ÀÚ¿ÀÌ ¹®ÀÚ¿ º¯¼ö jsonStringÀÇ ÇöÀç °ªÀ̶ó°í °¡Á¤
{
"person": {
"name": "È«±æµ¿",
"age": 20
},
"items": [
"ù¹øÂ°",
"µÎ¹øÂ°"
]
}
string jsonObjectId = @JsonFromString(jsonString); //JSON ¹®ÀÚ¿À» JSON
object·Î ÆÄ½Ì
// ´ÜÀÏ °ª Á¶È¸
string name = @JsonGetValue(jsonObjectId, "person.name");
// °á°ú: È«±æµ¿
// ¹è¿ ¿ä¼Ò Á¶È¸
string secondItem = @JsonGetValue(jsonObjectId, "items[1]");
// °á°ú: µÎ¹øÂ°
// ¿©·¯ ¿ä¼Ò Á¶È¸
string allNames = @JsonGetValue(jsonObjectId,
"$..name");
// °á°ú: È«±æµ¿
¹öÀüÁ¤º¸
ÃÖÃÊÁö¿ø: 10.3.6.25
°ü·Ã Ç׸ñ)
JsonTemplateReplacePlaceholder