Asp.net Mvc Framework 十一 (自訂Helper在MVC中的使用)

來源:互聯網
上載者:User
Monorail中的Helper是綁定在Controller上的
形如:[Helper(typeof(ChHelper))]
abstract public class BaseBlockController : SmartDispatcherController{
}

但本身Helper是使用在View中的,所以 Monorail這種定義方式 略微違背了分離之道

那麼Asp.net MVC中是如何綁定自訂的Helper的呢?

其實Asp.net MVC的View也有代碼檔案即類似 index.aspx.cs
代碼檔案繼承於ViewPage

下面用一個執行個體來講
我首先我自訂一個Helper
實現了對字串的一些小擴充public class StringHelper
{
    public string Red(string str) {
        return string.Format(@"<span style=""color:red"">{0}</span>",str);
    }
    public string Green(string str) {
        return string.Format(@"<span style=""color:green"">{0}</span>", str);
    }
}

那麼我們怎樣才能在View使用它呢?
我們可以在View的cs中寫以下代碼        public StringHelper Str {
            get;
            set;
        }

即為public partial class Index : ViewPage
    {
        public StringHelper Str {
            get;
            set;
        }
    }


這樣我們就可以在View中使用<%=Str.Red(ViewData["title"])%>

這樣的代碼了

如果這個Helper你想不僅在此一個檔案中使用
那麼可以通過將屬性 寫在一個BaseViewPage的基類中 然後所有的View都繼承於自訂的BaseViewPage來實現

同樣的,Master檔案中也可以通過類似的方法來完成使用自訂的Helper

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.