我的理解是,Helper方法確實是您可以執行硬核心邏輯的地方,我們可以在ASP.NET中說自定義控件嗎?例如,我爲使用傳統ASP.NET的.com工作。我們網站的性質非常複雜,所以我們重複使用併爲數千種產品渲染不同的表單。每個產品都可以有不同的配置形式。我們有一個非常完善的RenderForm.cs自定義服務器控件,它執行所有的邏輯。根據數據庫中一個表中的一些配置設置,它表示沒問題,對於產品1123它讀取設置(我們的用戶配置我們的內部管理系統)並採用它並吐出動態表單(使用文字控制和不)到這個時代。幫助程序是我們的「自定義服務器控件」
所以我現在正在考慮MVC。是的,這一切都是在視圖中完成的。部分是好的。您仍然需要在某些.cs中擁有一些自定義邏輯,這些邏輯並不是全部嵌入您的視圖中。這將是愚蠢的認爲你不會有一些會吐出一些HTML的類..就像一些非常困難的核心廣泛的幫助方法。
所以我的問題是,你現在做你的自定義服務器控件類型的邏輯的幫助器方法或類嗎?它基本上是一種相同的概念,因爲您需要一個地方將您的「硬核」HTML渲染邏輯放在控制器以外的某個類中。您的控制器不負責渲染。所以我猜,helper方法就是所謂的自定義服務器控件,這與我在經典的ASP.NET中使用的方法相似,比喻來說。我只需要一個是或現在是共識,輔助方法是做我的所有硬核可重複使用邏輯的地方,吐出html到頁面,我可以在自己的視圖中嵌入自定義控件?看起來像。
「幫助器基本上是靜態類,旨在包含用戶界面邏輯,否則會混淆您的用戶界面。將它們視爲UI實用程序。」 link text