ReadAsAsync <T> ()를 사용하여 복잡한 Json 개체 역 직렬화

Serefbilge

.net 4.0을 사용하는 mvc 프로젝트에서 ReadAsAsync ()를 사용하고 싶습니다. 결과는 null로 표시됩니다.

주소 표시 줄에 URI를 입력하면 다음과 같은 크롬 결과가 나타납니다 (태그 이름이 변경됨).

<ns2:MyListResponse xmlns:ns2="blablabla">
  <customerSessionId>xxcustomerSessionIdxx</customerSessionId>
  <numberOfRecordsRequested>0</numberOfRecordsRequested>
  <moreResultsAvailable>false</moreResultsAvailable>
  <MyList size="1" activePropertyCount="1">
    <MySummary order="0">
      <id>1234</id>
      <name>...</name>
      .
      .   
    </MySummary>
  </MyList>
</ns2:MyListResponse>

코드에서 문을 사용하면 :

using (var client = new HttpClient())
{
     var response = client.GetAsync(apiUri).Result;
     var message = response.Content.ReadAsStringAsync().Result;

     var result1 = JsonConvert.DeserializeObject<MyListResponse>(message);
     var result2 = response.Content.ReadAsAsync<MyListResponse>().Result;
}

메시지는 다음과 같이 "{\"MyListResponse\":{\"customerSessionId\"...}"json 객체에 해당하는 문자열 형식으로 제공됩니다.

{"MyListResponse":
    {"customerSessionId":"xxcustomerSessionIdxx",
     "numberOfRecordsRequested":0,
     "moreResultsAvailable":false,
     "MyList":
        {"@size":"1",
         "@activePropertyCount":"1",
         "MySummary":
            {"@order":"0",
             "id":1234,
             "name":"...",
             .
             .
            }
        }
    }
 } 

그리고 result1 및 result2의 속성은 null 또는 기본값으로 제공됩니다. 클래스 정의는 다음과 같습니다. 내용을 객체로 읽고 싶지만 읽을 수 없습니다. 이 문제를 해결하기 위해 무엇을 조언합니까? 내가 무엇을 잘못하고 있지? 미리 감사드립니다.

public class MySummary
{
    public int @Order { get; set; }
    public string Id { get; set; }
    public string Name { get; set; }
    .
    .
}

public class MyList
{
    public int @Size { get; set; }
    public int @ActivePropertyCount { get; set; }
    public MySummary MySummary{ get; set; }
}

public class MyListResponse
{
    public string CustomerSessionId { get; set; }
    public int NumberOfRecordsRequested { get; set; }
    public bool MoreResultsAvailable { get; set; }
    public MyList MyList { get; set; }
}
Serefbilge

새 클래스를 다음과 같이 정의했습니다.

public class ResponseWrapper
{
    public MyListResponse MyListResponse { get; set; }
}

이 래퍼와 함께 사용했습니다.

 var result1 = JsonConvert.DeserializeObject<ResponseWrapper>(message);
 var result2 = response.Content.ReadAsAsync<ResponseWrapper>().Result;

그런 다음 작동했습니다. MySummary 개체 만 필요하지만 작동하도록 더 많은 클래스를 작성해야합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

복잡한 JSON 개체 역 직렬화

분류에서Dev

복잡한 Json 객체 역 직렬화

분류에서Dev

Json은 인터페이스를 속성으로 사용하여 복잡한 개체를 역 직렬화합니다.

분류에서Dev

DynamicJsonArray가있는 복잡한 JSON 개체를 동적으로 역 직렬화

분류에서Dev

JSON 직렬 변환기를 사용하여 Mongo DB 개체 ID 역 직렬화

분류에서Dev

Immutablejs : 복잡한 JS 객체를 역 직렬화하는 방법

분류에서Dev

WebAPI 컨트롤러를 사용하여 복잡한 json 객체 직렬화

분류에서Dev

사용자 지정 XmlSerialization을 사용하여 복잡한 개체 역 직렬화

분류에서Dev

GSON을 사용하여 평면화 된 JSON 키를 적절한 개체로 역 직렬화

분류에서Dev

복잡한 JSON 개체 역 직렬화 C #

분류에서Dev

C #에서 Newtonsoft를 사용하여 중첩 된 JSON 개체의 역 직렬화

분류에서Dev

다른 개체를 포함하는 json 개체 역 직렬화

분류에서Dev

복잡한 자바 객체를 부분적으로 역 직렬화하기

분류에서Dev

Json .Net은 플랫 객체를 복잡한 객체로 직렬화합니다 (직렬화 / 역 직렬화에 대한 객체 구조 변경).

분류에서Dev

현재 JSON 개체를 역 직렬화 할 수 없습니다. 그룹 열을 사용하여 현재 JSON 개체를 역 직렬화 할 수 없습니다.

분류에서Dev

NestJS가 복잡한 유형을 사용하여 @Query ()를 DTO로 역 직렬화

분류에서Dev

Gson 및 Retrofit 2를 사용하여 복잡한 API 응답 역 직렬화

분류에서Dev

JSON에서 /에서 중첩 된 파생 개체를 사용하여 C # 데이터 개체 역 직렬화

분류에서Dev

jackson을 사용하여 동일한 ID를 가진 2 개의 개체를 포함하는 Json을 역 직렬화 할 수 없습니다.

분류에서Dev

Objective-C를 사용하여 JSON을 사용자 지정 개체로 역 직렬화

분류에서Dev

DataContractSerializer를 사용하여 개체에서 XML 역 직렬화

분류에서Dev

복잡한 JSON 역 직렬화

분류에서Dev

System.Text.Json API를 사용하여 스트림을 개체로 역 직렬화하는 방법

분류에서Dev

@JsonTypeInfo 및 @JsonSubTypes를 사용하여 JSON을 다형성 개체 모델로 역 직렬화하지 않습니까?

분류에서Dev

C #에서 Newtonsoft를 사용하여 Json에서 중첩 된 개체의 효율적인 수동 역 직렬화

분류에서Dev

JSON 개체 역 직렬화

분류에서Dev

.NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

분류에서Dev

.NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

분류에서Dev

URL에서 C #의 List <T>로 여러 Json 개체 역 직렬화

Related 관련 기사

  1. 1

    복잡한 JSON 개체 역 직렬화

  2. 2

    복잡한 Json 객체 역 직렬화

  3. 3

    Json은 인터페이스를 속성으로 사용하여 복잡한 개체를 역 직렬화합니다.

  4. 4

    DynamicJsonArray가있는 복잡한 JSON 개체를 동적으로 역 직렬화

  5. 5

    JSON 직렬 변환기를 사용하여 Mongo DB 개체 ID 역 직렬화

  6. 6

    Immutablejs : 복잡한 JS 객체를 역 직렬화하는 방법

  7. 7

    WebAPI 컨트롤러를 사용하여 복잡한 json 객체 직렬화

  8. 8

    사용자 지정 XmlSerialization을 사용하여 복잡한 개체 역 직렬화

  9. 9

    GSON을 사용하여 평면화 된 JSON 키를 적절한 개체로 역 직렬화

  10. 10

    복잡한 JSON 개체 역 직렬화 C #

  11. 11

    C #에서 Newtonsoft를 사용하여 중첩 된 JSON 개체의 역 직렬화

  12. 12

    다른 개체를 포함하는 json 개체 역 직렬화

  13. 13

    복잡한 자바 객체를 부분적으로 역 직렬화하기

  14. 14

    Json .Net은 플랫 객체를 복잡한 객체로 직렬화합니다 (직렬화 / 역 직렬화에 대한 객체 구조 변경).

  15. 15

    현재 JSON 개체를 역 직렬화 할 수 없습니다. 그룹 열을 사용하여 현재 JSON 개체를 역 직렬화 할 수 없습니다.

  16. 16

    NestJS가 복잡한 유형을 사용하여 @Query ()를 DTO로 역 직렬화

  17. 17

    Gson 및 Retrofit 2를 사용하여 복잡한 API 응답 역 직렬화

  18. 18

    JSON에서 /에서 중첩 된 파생 개체를 사용하여 C # 데이터 개체 역 직렬화

  19. 19

    jackson을 사용하여 동일한 ID를 가진 2 개의 개체를 포함하는 Json을 역 직렬화 할 수 없습니다.

  20. 20

    Objective-C를 사용하여 JSON을 사용자 지정 개체로 역 직렬화

  21. 21

    DataContractSerializer를 사용하여 개체에서 XML 역 직렬화

  22. 22

    복잡한 JSON 역 직렬화

  23. 23

    System.Text.Json API를 사용하여 스트림을 개체로 역 직렬화하는 방법

  24. 24

    @JsonTypeInfo 및 @JsonSubTypes를 사용하여 JSON을 다형성 개체 모델로 역 직렬화하지 않습니까?

  25. 25

    C #에서 Newtonsoft를 사용하여 Json에서 중첩 된 개체의 효율적인 수동 역 직렬화

  26. 26

    JSON 개체 역 직렬화

  27. 27

    .NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

  28. 28

    .NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

  29. 29

    URL에서 C #의 List <T>로 여러 Json 개체 역 직렬화

뜨겁다태그

보관