2012-07-08 57 views
5

enter image description here 今天早上我在測試我的代碼,突然間出現了這個錯誤。我不知道該怎麼做,因爲它在昨天晚上纔開始工作。mscorlib.dll中發生了'System.StackOverflowException'

我檢查瞭解決方案的Stackoverflow網站,但解決方案是基於原始代碼,它是本地的。

我希望有人能告訴我這裏有什麼問題?有沒有解決這個問題的方法?

+3

該問題似乎來自您的數據。 XML文件似乎包含某種類型的循環引用。我會建議仔細檢查它的內容。 – 2012-07-08 07:51:04

+0

我第二@FrédéricHamidi。發佈你的文件,也許,如果它不是太大。 – SimpleVar 2012-07-08 07:52:12

+0

@Yorye Nathan:檔案太大了......我該怎麼辦? – linguini 2012-07-08 07:56:09

回答

3

由於循環引用,您的數據可能不再是有效的XML。向下鑽取並檢查子集是否有問題。或者嘗試一些工具,以便他們能夠更快速地查明問題。隨着工具我的意思是應用程序,如XMLSpy的(甚至像http://www.w3schools.com/dom/dom_validate.asp在線檢查)

+1

XML文件中的循環引用將如何顯示? – CodesInChaos 2012-07-08 09:01:56

+0

Thx god finally :)你拯救了我的生命:我的循環引用是SelectedDate =「{Binding RelativeSource = {RelativeSource Self}}」 – 2017-07-25 20:12:22

0

在我的C#Windows窗體應用程序代碼的循環引用(而不是在XML文件),它拋出的「System.StackOverFlowException」這個樣子,這種方法我真是一步一步打破按@ zmbq的評論:

class A 
{ 
//Class A code 

class B 
{ 
    //Class B code 
} 
} 

class C 
{ 
    A a = new A(); 
    B b = new B(); 
    C c = new C(); /*CALLING THE SAME CONSTRUCTOR IN CIRCULAR FASHION*/ 
} 

我刪除構造函數調用C類(這實際上是必要的),現在它工作正常!

相關問題