我正在学习数据访问对象设计模式并使用c#/ oracle实现它。但是,当我尝试运行程序时,我收到错误。
我只是想将数据添加到我的数据库,但是我一直收到以下错误:
Test.dll
中出现未处理的“System.StackOverflowException”类型异常
它发生在我的ReviewGame getter和setter。
您是否善于查看我的代码,看看我哪里出错了?我将不胜感激任何帮助。
public string ReviewGame { get; set; }
"insert into review values(review_seq.nextval," + 2+ "," + review.MemberId + ", '" +review.ReviewGame+ "')";
ReviewDao reviewDao = new ReviewDaoImp();
Review r = new Review();
r.reviewGame = textBox1.Text;
r.ToString();
reviewDao.addReview(r);
}
答案 0 :(得分:3)
您的属性会在他们的getter和setter中调用自己。您需要使用支持字段来存储数据:
private string _reviewGame;
public string ReviewGame
{
get { return _reviewGame; }
set { _reviewGame = value; }
}
或者您可以使用自动属性:
public string ReviewGame { get; set; }
(请注意,我还更改为属性名称以大写字母开头,这是根据惯例。)