JSON 목록을 C #의 개체 목록으로 역 직렬화 할 수 없음

Ramachandran

현재 json배열에서 이메일 목록을 역 직렬화하는 솔루션을 작업 중입니다. 이메일 객체 목록을 받으면 다른 클래스를 사용하여 유효성을 검사 한 다음 다른 목록으로 설정합니다.

다음은 Deserialize에 대한 코드입니다.

static void Main(string[] args)
{
    string jsonTest = "{\"Emails\":[\"[email protected]\",\"[email protected]\"]}";

    Class1 contact = JsonConvert.DeserializeObject<Class1>(jsonTest);

    Console.WriteLine(contact.Emails[0]);
    Console.WriteLine(contact.Emails[1]);
}

그리고 아래는 Class1deserialize 대한 클래스 정의입니다 .

public class Class1
{
    private readonly List<ValidateEmail> emailsobj;
    public List<string> Emails
    {
        get
        {
            return emailsobj.Select(o => o.EmailAdd).ToList();
        }
        set
        {
            foreach (string email in value)
            {
                emailsobj.Add(new ValidateEmail(email));
            }
        }
    }
}

그리고 아래는 validate수업입니다.

public class ValidateEmail
{
    public string EmailAdd { get; set; }
    private bool Valid;

    public ValidateEmail(string value)
    {           
        try
        {
            MailAddress mail = new MailAddress(EmailAdd);
            EmailAdd = value;
            Valid = true;
        }
        catch (FormatException)
        {
            Valid = false;
        }
    }
}

역 직렬화 할 때마다 온라인에서 예외가 발생합니다.

Console.WriteLine(contact.Emails[0]);

Newtonsoft.Json.JsonSerializationException : 'JsonGenerator.Class1'의 'Emails'에서 값을 가져 오는 동안 오류가 발생했습니다. ---> System.ArgumentNullException : 값은 null 일 수 없습니다. (매개 변수 '소스')

List<Email>결코 설정되지 않은 것 같습니다 . 이것에 대한 어떤 도움이라도 대단히 감사하겠습니다.

MBB

Lists-를 사용하는 경우 아래 설정 (Replace)을해야합니다 ObjectCreationHandling.

Replace항상 새 개체를 만들고 Lists!에 대한 setter 속성을 활성화합니다 .

따라서 Class1아래와 같이 새 목록을 초기화 한 후 :

private readonly List<ValidateEmail> emailsobj = new List<ValidateEmail>();

설정을 갖도록 코드를 변경하십시오.

 var settings = new JsonSerializerSettings
      {                
         ObjectCreationHandling = ObjectCreationHandling.Replace           
      };

 Class1 contact = JsonConvert.DeserializeObject<Class1>(jsonTest, settings);

여기 에서 자세한 설명을 참조 하십시오 !

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

json.net이 개체 목록으로 역 직렬화 할 수 없음

분류에서Dev

현재 JSON 개체를 역 직렬화 할 수 없음-Null 목록

분류에서Dev

JSON을 C # 개체 목록으로 역 직렬화

분류에서Dev

JSON 개체를 .Net 목록으로 역 직렬화 (C #)

분류에서Dev

C #의 JSON 배열을 목록으로 역 직렬화

분류에서Dev

json 문자열을 .NET 개체 목록으로 역 직렬화

분류에서Dev

JSon을 C #으로 역 직렬화 할 수 없습니다.

분류에서Dev

C #에서는 간단한 JSON 개체를 정수 목록으로 역 직렬화합니다.

분류에서Dev

목록을 포함하는 개체로 XML 문자열을 역 직렬화 할 수 없습니다.

분류에서Dev

C # XML을 개체 목록으로 역 직렬화

분류에서Dev

개체 목록에 하위 요소를 역 직렬화 할 수 없습니다.

분류에서Dev

어떻게 직렬화 된 일반 목록으로 json 파일을 역 직렬화 할 수 있습니까?

분류에서Dev

JSON을 C # 개체로 역 직렬화-역 직렬화되는 데이터 없음

분류에서Dev

JSON을 C # 개체로 역 직렬화

분류에서Dev

JSON 문자열을 C # 및 Unity의 개체로 역 직렬화

분류에서Dev

C #의 목록이있는 개체에 XML 역 직렬화

분류에서Dev

HttpResponseMessage를 모델 개체로 역 직렬화 할 수 없음

분류에서Dev

C #의 IMGUR API에서 현재 JSON 개체 오류를 역 직렬화 할 수 없습니다.

분류에서Dev

값 목록을 C # 개체로 역 직렬화하는 방법

분류에서Dev

XML을 C #의 목록으로 역 직렬화

분류에서Dev

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

분류에서Dev

JSON Newtonsoft C # 다양한 유형의 객체 목록 역 직렬화

분류에서Dev

역 직렬화 할 때 JSON 목록 null

분류에서Dev

JSON 개체를 역 직렬화 할 수 없습니다.

분류에서Dev

직렬화 후 저지로 json을 역 직렬화 할 수 없습니까?

분류에서Dev

C # 목록으로 JSON 문자열 역 직렬화

분류에서Dev

C #에서 중첩 된 목록으로 JSON 역 직렬화

분류에서Dev

JSON 문자열을 C # 개체로 역 직렬화 할 때 빈 클래스

분류에서Dev

UWP 앱에서 JSON을 역 직렬화 할 수 없음

Related 관련 기사

  1. 1

    json.net이 개체 목록으로 역 직렬화 할 수 없음

  2. 2

    현재 JSON 개체를 역 직렬화 할 수 없음-Null 목록

  3. 3

    JSON을 C # 개체 목록으로 역 직렬화

  4. 4

    JSON 개체를 .Net 목록으로 역 직렬화 (C #)

  5. 5

    C #의 JSON 배열을 목록으로 역 직렬화

  6. 6

    json 문자열을 .NET 개체 목록으로 역 직렬화

  7. 7

    JSon을 C #으로 역 직렬화 할 수 없습니다.

  8. 8

    C #에서는 간단한 JSON 개체를 정수 목록으로 역 직렬화합니다.

  9. 9

    목록을 포함하는 개체로 XML 문자열을 역 직렬화 할 수 없습니다.

  10. 10

    C # XML을 개체 목록으로 역 직렬화

  11. 11

    개체 목록에 하위 요소를 역 직렬화 할 수 없습니다.

  12. 12

    어떻게 직렬화 된 일반 목록으로 json 파일을 역 직렬화 할 수 있습니까?

  13. 13

    JSON을 C # 개체로 역 직렬화-역 직렬화되는 데이터 없음

  14. 14

    JSON을 C # 개체로 역 직렬화

  15. 15

    JSON 문자열을 C # 및 Unity의 개체로 역 직렬화

  16. 16

    C #의 목록이있는 개체에 XML 역 직렬화

  17. 17

    HttpResponseMessage를 모델 개체로 역 직렬화 할 수 없음

  18. 18

    C #의 IMGUR API에서 현재 JSON 개체 오류를 역 직렬화 할 수 없습니다.

  19. 19

    값 목록을 C # 개체로 역 직렬화하는 방법

  20. 20

    XML을 C #의 목록으로 역 직렬화

  21. 21

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

  22. 22

    JSON Newtonsoft C # 다양한 유형의 객체 목록 역 직렬화

  23. 23

    역 직렬화 할 때 JSON 목록 null

  24. 24

    JSON 개체를 역 직렬화 할 수 없습니다.

  25. 25

    직렬화 후 저지로 json을 역 직렬화 할 수 없습니까?

  26. 26

    C # 목록으로 JSON 문자열 역 직렬화

  27. 27

    C #에서 중첩 된 목록으로 JSON 역 직렬화

  28. 28

    JSON 문자열을 C # 개체로 역 직렬화 할 때 빈 클래스

  29. 29

    UWP 앱에서 JSON을 역 직렬화 할 수 없음

뜨겁다태그

보관