0

DLL を生成する ASP.NET でサーバー コントロールを作成しました。これを必要な別のアプリケーションで使用できます。とても助かります。

今、私は PHP と ASP.NET MVC 3 でサーバー コントロール タイプのアプリケーションを作成したいと考えています。PHP と ASP.NET MVC 3 のサンプル アプリケーションまたは例を提供してもらえますか?

4

1 に答える 1

1

ASP.NET WebForms コントロールからその他のものに変換するための Dai の単純なルール:

  1. コントロールから「モデル」を抽出します (つまり、可能なすべての入力変数を単一のオブジェクトにカプセル化します)。
  2. このモデル オブジェクトのバリエーションによって、レンダリングされた出力 (HTML) がどのように変化するかを分析します。
  3. 上記のレンダリングされた出力生成ロジックを目的のフレームワークに再実装します。

これが WebForms にある場合:

public class WhateverControl : Control {
    public String SomeParameter { get; set; }
    public override void Render(HtmlTextWriter wtr) {
        wtr.WriteLine("<p>" + SomeParameter + "</p>");
    }
}

PHP では、次のようにします。

class Model {
    // control parameters go here, e.g. visiblity, data to be displayed, form fields, etc
   public $someParameter;
}

public function renderWhatever(Model $model) {
    echo "<p>" . $model->someParameter . "</p>";
}

ASP.NET MVC (ヘルパーを使用) では、次のようになります。

public class Model {
    public String SomeParameter { get; set; }
}

public static MvcHtmlString Whatever(this HtmlHelper html, Model model) {
    return MvcHtmlString.Create("<p>" + model.SomeParameter + "</p>");
}

<%= html.Whatever( new Model() { SomeParameter = "arse" } ) %>
于 2012-09-14T19:20:22.087 に答える