차트는 자료형 상관 없이 모두 string으로 로드가 되니 언마샬을 하여 S를 제거하면 전부 스트링 형식으로 들어올 탠데요. 차트 로드시 차트 정보 말고 selectedChartFileId 는 언마샬 전의 N이 였으니 언마샬로 제거하면 int나 이런 정수형태로 들어오게 되나요? 그리고 엑셀이 적용되지 않은 경우 언마샬 전에는 NULL : True 이렇게 있는데
언마샬로 NULL을 제거하면 단순히 = null 이런식으로 널로 들어오게 되는것인가요?
안녕하세요 개발자님.
언마샬은 기본적으로 “NULL”, “S” 등의 데이터 타입값만을 제거하는 함수이기 때문에 제거시 true가 리턴이 됩니다.
"rows": [
{
"same": {
"S": ""
},
"string": {
"S": ""
},
"int": {
"NULL": true
},
"float": {
"NULL": true
}
}
]
해당 리턴 시에 int에 접근할 경우 값이 true로 리턴되는 점 참고해주시면 감사하겠습니다.
아, 단순히 자료형만 없애는거면 selectedChartFiledId 같은경우 N: “2342” 되어 있는데요.
그러면 자료형 N을 단순히 지우기만 하는 것이니 정수 형태의
selectedChartFiledId : { “N” : “2342”}
에서 selectedChartFiledId:2342 이렇게 N 넘버형식 이였으니 정수형으로 들어오는게 아닌
단순히 자료형만 지워서 selectedChartFiledId : “2342” 이렇게 되는것인가요?
네 맞습니다.
뒤끝 리턴값의 경우 현재 숫자형값임에도 불구하고 "10"과10으로 형태가 다른 리턴값들이 다소 존재합니다.
따라서 따라서 json에서 알려주는 데이터타입 보다는 ToString으로 한번 교채한뒤 다시 Int형이나 다른 형태로 바꾸는 방법을 추천드립니다.
Int32.Parse(json["rows"][0]["int"].ToString());