2016-03-05 39 views
-1

我有一些@helper函數,但是我不想將它們全部放在App_Code中,以使它們在整個項目中可見。如何重用不在App_Code中的@helper函數?

是否有任何其他方式使它們在項目中可見?


我感興趣的是與@helper功能,而不是別人(部分觀點,靜態/擴展方法),因爲我想這樣做:

  • 他們有一個文件夾到我喜歡的,而不是App_Code文件和全局訪問
  • 有模板的優勢(語法高亮,無串cocatenation等)
  • 沒有指定路徑,再利用(如局部視圖) - 只是短名稱,自動完成

回答

0

您可以編寫標準類方法並使用它們代替輔助函數。例如,您可以創建HtmlHelpers類:

public static class HtmlHelpers 
{ 
    public static HtmlString Hello(string Name) 
    { 
     return new HtmlString("Hello <b>" + Name + "</b>!"); 
    } 
} 

,然後在你的Razor視圖,你可以這樣調用:

<div>@HtmlHelpers.Hello("World")</div> 

,它會產生HTML:

<div>Hello <b>World</b>!</div> 
+0

謝謝,這是一個可以考慮的選擇,但我想保持模板優勢。 – Dan

+1

局部視圖如何? – Wapac

+0

好吧,這不是一回事,我必須在每次重複使用時指定整個路徑,而使用幫助程序的名稱更短,我也可以自動完成。 – Dan

相關問題