我对C#语法还不熟悉。我编写了以下类(我的网站主页的代码后台):
public partial class MasterPagePro : System.Web.UI.MasterPage
{
public String pageTitle
{
get
{
if (this.pageTitle == null)
return "";
else
return " - " + this.pageTitle;
}
}
}
然而,当我尝试在HTML中像这样访问pageTitle时:
<title>MySite<%=pageTitle%></title>
我遇到了一个stackoverflow错误。看代码,很明显这个问题是方法在递归调用自己,但是我不知道该怎么写来解决这个问题。我可以像下面这样做:
public partial class MasterPagePro : System.Web.UI.MasterPage
{
private String _pageTitle
public String pageTitle
{
get
{
if (_pageTitle == null)
return "";
else
return " - " + _pageTitle;
}
set { _pageTitle = value; }
}
}
但这似乎违背了使用语法快捷方式的初衷。那么正确的做法是什么呢?