asp.net從一開始就沒按OOP規範來 太可惜了從 Page_Load開始

iDotNetSpace發表於2009-08-07
我突然才發現  protected void Page_Load(object sender, EventArgs e) 被自動呼叫的時候卻找不到 呼叫 的地方,天拉,記得1.1的時候  在程式碼裡看得到 this.Load += new System.EventHandler(this.Page_Load); 這樣證句,在2.0裡卻找不到了, 
也就是說 頁面呼叫 完全 是一種約定,程式碼裡看不到了,天拉這又在違反物件導向規則,微軟又想走MFC的老路 ,又在標準里加私貨.真是痛心 
在1.1的時候看得到類頁面的一大堆初始化程式碼,雖然看起多雜,看是複合面象物件要求, 而Page_Load相當於系統回撥,正確的用法應該是 protected override void Page_Load 這樣才對,覆蓋基類的方法,這樣才能被呼叫,可是甚至這樣寫 
private void Page_Load 都通得過 能正常呼叫 執行  private void Page_Init 大家看看 私有方法啊,哪來的私有方法沒被初始化事件就呼叫 ,太噁心了,程式碼裡沒有初始化程式碼,外面竟然能呼叫私有方法,這種約定又想把.NET 搞成MFC那種下場
---------------
我怎麼知道是在頁面載入時執行?如果不看書 不看MSDN的話? 這是一種硬約定吧?其它完全沒必要這麼做,微軟為什麼要這麼做呢?有人給我講講,這樣做完全不規範,其它微軟完全可以這樣,這樣很很明瞭了啊 或者在ASPX 檔案里加一句 DocumentInit="Page_Load" 

 protected override void OnInit(EventArgs e)
asp.net從一開始就沒按OOP規範來 太可惜了從 Page_Load開始    
{
        
base.OnInit(e);
        
this.Load += new EventHandler(Page_Load);
    }



可是這些都看不到,完全憑微軟自己硬性約定呼叫,好好的OOP 又被微軟搞亂了 ,我真希望 我錯了

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-611624/,如需轉載,請註明出處,否則將追究法律責任。

相關文章