<分区>
周五,当我遇到堆栈溢出错误时,我正在处理一个应用程序的公共(public)评论部分,这让我很困惑,所以我想我应该寻求帮助。使用“堆栈溢出”这一表达方式搜索网络有点弄巧成拙!
在发送要添加到数据库的类的实例之前,我想对类中字段的 set 语句执行 HtmlEncode:
public class Feedback
{
public Feedback() { }
public string FeedbackComment
{
get { return FeedbackComment; }
set {System.Web.HttpUtility.HtmlEncode(value); }
}
// other fields
// methods
}
这导致了 StackOverflow 错误,我已通过将代码更改为如下所示来修复错误:
public class Feedback
{
public Feedback() { }
private string feedbackComment;
public string FeedbackComment
{
get { return feedbackComment; }
set { feedbackComment = System.Web.HttpUtility.HtmlEncode(value); }
}
// other fields
// methods
}
但我只是想解释为什么第一个 get/set 语句如此递归以至于它们导致堆栈溢出但是当恢复代码时看起来更像 c#2.0 工作?这可以用更短的语法来实现吗?如果可以,如何实现?
这是我关于 SO 的第一个问题 - 请尽量温和!