2015-04-02 63 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