는이 같은 C#에서 유효하지 않은 식별자가있는 JSON 문자열 (내가 작성되지 않음)이 있습니다이런 종류의 JSON을 직렬화하려면 어떻게해야합니까?
"OBSBasic.SelectScene": [],
"libobs.hide_scene_item.Captura de Janela": [],
및
"push-to-mute-delay": 0,
과에 아들을 ...
here's 완전한 아들.
내 질문은 : 나는 그것을 좋아 할 수 있도록
가 어떻게 사전의 일종으로 그 JSON 변환 할 수 있습니다 : 나는 확실히 모든 가능한 속성 이름을 모르는
dic["sources"][0]["settings"]["window"] = "XXXX";
을 그 JSON 파일을 가질 수 있으므로 배열 기반 접근 방식으로 변환하여 키 ()에서 액세스 할 수 있습니다. 대신 새 속성이 있으면 deserialize하는 데 사용 된 개체 이름을 사용하는 것이 좋습니다. 생성됩니다.
는이 같은 성공 뭔가없이 시도 :예외가 throw : 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException'을 Microsoft.CSharp에서 런타임 예외 결과
dynamic data = JsonConvert.DeserializeObject(jsonstr); data.sources.settings.window = "xxxx";
.dll Throw 예외 : 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException'in System.Core.dll
나는 사전이 DeserializeObject<T>()
방법으로 전달되는 것과 같이 보일 것 같을 때 bcause를 보여줄 코드가 없습니다. 그 JSON 객체를 나중에 문자열로 직렬화하고 싶습니다.
? 질문을 수정하십시오. –
'dic [ "sources"] [ "settings"] [ "window"] = "XXXX";'- sources는 배열이 아니라 사전입니다. 'dic [sources "] [0] ["settings "] ["window "] ="XXXX ";"AFAIK와 같은 것이 필요합니다. – yaakov
@EliArbel 님이 – Jack