1

すべてのコントローラービューで呼び出すことができるメソッドを定義できるアプリケーションヘルパーを作成する方法を探しています。Railsでは無料で入手できますが、ASP.NET MVCでc#を使用してこれを実現するにはどうすればよいですか?

4

2 に答える 2

3

通常の方法は、拡張メソッドを次のように記述することHtmlHelperです。

public static string Script(this HtmlHelper html, string path)
{
    var filePath = VirtualPathUtility.ToAbsolute(path);
    return "<script type=\"text/javascript\" src=\"" + filePath
        + "\"></script>";
}

Html.Script("foo");ビューでetcを使用できるようになりました(標準ビューには というHtmlHelperメンバーがあるためHtml)。ベース ビューにメソッドを記述することもできますが、拡張メソッドのアプローチが最も一般的です。

于 2009-03-09T11:18:36.290 に答える
0

基本コントローラー クラスに拡張メソッドを追加することをお勧めします。

public static class ControllerExtensions
{
    public static string Summin(this Controller c)
    {
        return string.Empty;
    }
}

コントローラーでヘルパー関数にアクセスできます。

  public class MyController : Controller
    {
        public ActionResult Index()
        {
            this.Summin();
            return View();
        }
    }
于 2009-03-09T11:22:26.950 に答える