2010-10-11 73 views
1

任何人都可以告訴我如何在SubSonic 2中擴展開箱即用的腳手架嗎?SubSonic:覆蓋腳手架

當用戶點擊保存按鈕,這會觸發btnSave_Click void,我想根據剛剛更新的記錄執行另一個存儲過程。

什麼是最好的方法?非常感謝。

回答

1

從我在SubSonic 2源代碼中看到的情況看,當您觸發btnSave_Click時,沒有其他功能可以按原樣調用。

因此,您需要修改源代碼並重新創建subsonic 2 dll(這非常簡單)。

因此,如果您修改源代碼,只需放置一個保存後運行的函數,然後在您的代碼中用您的調用覆蓋此函數。

/// <summary> 
    /// Saves the editor. 
    /// </summary> 
    private void SaveEditor() 
    { 
     if(Mode == ScaffoldMode.Edit) 
      UpdateRecord(PrimaryKeyControlValue); 
     else 
      InsertRecord(); 

     SaveManyToMany(); 

     AfterTheSave(); 

     if(ReturnOnSave) 
      BuildWithModeChange(ScaffoldMode.List); 
    } 

    public virtual void AfterTheSave() 
    { 
    }