2017-05-10 5 views
2

나는 C# 클래스를 가지고있다. 나는 몽고 C# 드라이버를 사용하여 Mongo DB에 문서로 저장하고있다.Mongo DB에서 C# 클래스의 프로퍼티로 JObject를 저장

public JObject Payload {get;set;} 

JObject가 Newtonsoft JSON 라이브러리에서 유형 인 경우 :이 클래스에 다음과 같다 속성을 추가했습니다. Mongo로 직렬화 될 때 올바른 키와 구조 집합을 가진 문서를 얻을 수 있지만 모든 값은 Newtonsoft 라이브러리의 형식 이름입니다.

"페이로드": { "fieldOne": "Newtonsoft.Json.Linq.JObject, Newtonsoft.Json, 버전 = 10.0.0.0, 문화 = 중립, PublicKeyToken = 30ad4fe6b2a6aeed", "fieldTwo 예를 들어 ": { "사람 ": { "attributeOne ":"하는 jobject ", 등등

합니다. 이 문서를 올바르게 저장하려면 어떻게해야합니까? 예를 들어 값의 유형 이름 대신 실제 값이 있습니까? Newtonsoft 형식에 대한 사용자 지정 serializer를 작성하는 유일한 방법은 무엇입니까?

답변

0

유형을 JObject에서 BsonDocument으로 변경했으며 속성을 설정할 때 BsonDocument.Parse을 객체의 문자열 표현에 사용했습니다. JSON 값을 다시 추출해야 할 때 속성에서 .ToString() 메서드를 사용합니다. 이것은 작동하는 것 같습니다.

관련 문제