在ASP.Net Web表单中加载页面后执行的属性声明代码?

时间:2015-04-02 06:40:47

标签: c# asp.net

我有以下情况。

我有一个包含一些属性的页面类。

这是我的班级

public partial class p : System.Web.UI.Page
{
        private int? X
        {
            get
            {
                return // some helper method will return the value of X;
            }
        }
}   
protected void Page_Load(object sender, EventArgs e)
{
  // in the page load event
   var d = X;
}

如果我在属性的get和var d = X行中设置了一个断点。

页面加载事件在get helper方法调用之前执行?

我想知道为什么会这样?

感谢。

1 个答案:

答案 0 :(得分:3)

getter / setter实质上与方法调用没什么区别,只是一种简写语法。您的代码在逻辑上与

相同
public partial class p : System.Web.UI.Page
{
    private int? GetX()
    {
        return // some helper method will return the value of X;
    }
}   
protected void Page_Load(object sender, EventArgs e)
{
  // in the page load event
   var d = GetX();
}

getter不会保存任何值,也不会执行任何操作,只要在调用时返回代码指定的内容。这对你有意义吗?