【发布时间】:2011-07-12 21:34:24
【问题描述】:
所以,我开始着手这个庞大的项目。这是一个拥有数百个变量和方法以及许多部分类的巨大类。
interface IBusinessReturn
{
string variableOne { get; set; }
string variableTwo { get; set; }
string variableHundred { get; set; }
//a lot more...
}
public partial class BusinessTransaction : IBusinessReturn
{
private string _variableOne;
public string variableOne
{
get { return variableOne; }
set { _variableOne= value; }
}
private string _variableTwo;
public string variableTwo
{
get { return variableTwo; }
set { _variableTwo = value; }
}
private string _variableHundred;
public string variableHundred
{
get { return variableHundred; }
set { _variableHundred = value; }
}
// And so it goes on till hundreds...
}
还有很多这样的部分:
public partial class BusinessTransaction: IBusinessTransaction238
{
//Lots of methods
}
问题是:除了我声明的一些新变量外,它都可以正常工作。 (varOne 和 Two,在上面的示例中)。当我尝试为这些 var 设置任何值时,我得到了 StackOverflowException。我 100% 确定它们的声明方式和其他的一样。
我是这样称呼的:
BusinessTransaction v763 = new BusinessTransaction();
v763.variableHundred = "Hi"; //working
v763.variableOne = "Hello"; //StackOverflow HERE.
我只是看不出发生这种情况的任何原因,我只希望您能告诉我这是否与此类中的大量方法和变量有关..
【问题讨论】:
-
这是在某种循环中吗?
-
您是否有理由不使用自动实现 getter 和 setter 的
{ get; set; }语法? -
在 C# 中,建议公共成员使用 PascalCased 而不是 camelCased。
标签: c# asp.net oop stack-overflow