发生了’System.StackOverflowException’类型的未处理exception

为什么这个? 这是我的代码:

public class KPage { public KPage() { this.Titolo = "example"; } public string Titolo { get { return Titolo; } set { Titolo = value; } } } 

我通过构造函数设置数据。 所以,我想做些喜欢的事情

 KPage page = new KPage(); Response.Write(page.Titolo); 

但是我得到了这个错误:

 set { Titolo = value; } 

你有一个无限循环:

 public string Titolo { get { return Titolo; } set { Titolo = value; } } 

在你的代码中引用Titolo的那一刻,getter或setter调用getter,它调用getter调用getter,调用getter调用getter … Bam – StackOverflowException

使用支持字段或使用自动实现的属性 :

 public string Titolo { get; set; } 

要么:

 private string titolo; public string Titolo { get { return titolo; } set { titolo = value; } } 

你有一个自我指涉的二传手。 您可能想要使用自动属性:

 public string Titolo { get; set; } 

改成

 public class KPage { public KPage() { this.Titolo = "example"; } public string Titolo { get; set; } }