0

클래스를 XML로 serialize하려고하면 NullReferenceException이 발생하여 그 이유를 파악할 수 없습니다. Visual Studio 디버거에서 Object를 살펴 보았습니다. 그 중 아무 것도 초기화되지 않았습니다. serialize하려고 할 때 displayConfig의 모든 속성이 null이 아니므로 파일 이름이 정확합니다. 우리는 여기서 무력하다. 어디 그에서 온이 NullReferenceException이이 방법 직렬화에 의해 발생 및 역 직렬화됩니다 않습니다XmlSerializer.Serialize의 NullReferenceException

당신입니다 http://pastebin.com/3RwkMMbr

[질문에서 코드를 찾을 수 있습니까?

편집 : 확인. 다른 응용 프로그램에서이를 시도한 후에 InnerException이 "NullReferenceException"에서 "Assemlby $ (ProjectName)을 찾을 수 없습니다"와 같은 것으로 변경되었습니다. 그건 이상한 일 이었어. bin/Debug 폴더에서 .dll에 대한 참조를 추가했는데 갑자기 작동했다. 나는 이유를 모르지만, "NullReferenceException"은 더 이상 없다. 그것은 잘 serialize합니다. 원래 프로젝트에서도 마찬가지입니다.

혼란 스럽습니다. 이 코드로 작성하고자하는 .dll을 참조하기 위해 머리에 이상한 루프가 생깁니다.

+1

스택 추적이란 무엇입니까? – svick

+1

내 프로젝트에 복사 - 붙여 넣기가 작동하지 않습니다. 읽기 쉽지 않습니다. 네가 할 수없는 일을 내가 어떻게 기대하니? –

+0

@svick : Stacktrace는 다음 위치에 있습니다. https://pastebin.com/bnJZFjfQ – ponder

답변

0

코드에서 찾을 수있는 유일한 문제는 getter에 밑줄이 없어서 StreamSource (시리얼 라이저가 수행함)을 사용하면 스택 오버플로가 발생한다는 것입니다.

실제로 오류를 재생산하는 코드를 제공 할 수 없다면 도움을 드릴 수 없습니다.

+0

나는 오류를 재현하는 빈 코드를 만들었고 빈 WinForms ComponentLibrary Project 내에서 작업해야합니다. 이 코드는 http://pastebin.com/P5tJsqDY에서 찾을 수 있습니다. – ponder

관련 문제