2015-04-02 64 views
0

我有以下情况。属性声明代码在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方法调用之前执行?

我想了解为什么会发生这种情况?

谢谢。

回答

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(); 
} 

的吸附剂,将不保存任何值,或做任何事情比任何回报的代码指定时,它被调用。这对你有意义吗?

+0

我明白了,谢谢。 – user123456 2015-04-02 06:47:33