2010-12-31 5 views
2

개체 스트림을 XAML 파일에 쓰려고하는데 StackoverFlowException으로 끝납니다. CallStack에서 "Visual Studio에서 지원하는 스택 프레임의 최대 수가 초과되었습니다."XAML에 개체 그래프를 쓰는 동안 StackOverFlow 예외가 발생했습니다.

이것은 실행하려는 코드 조각입니다.

StreamWriter xamlStream =new StreamWriter(File.OpenWrite("a.xaml")); 
string myXaml = System.Windows.Markup.XamlWriter.Save(objectInstance); 
xamlStream.Write(myXaml); 

감사합니다 ...!

답변

2

objectInstance에 순환 참조가 포함되어있어 작성자가 지원하지 않아야합니다.

+0

예 순환 참조가 있습니다.이를 수행하는 다른 방법이 있습니까? – Novice

+0

직렬화를 수동으로 수행 할 수 있습니다. 순환 참조를 GUID와 같은 일종의 ID로 바꾼 다음이를 사용하여 개체를 읽을 때 참조를 다시 설정하십시오. – Janiels

관련 문제