User View Control
コードビハインドはありません。では、どのようにevents
of 要素を作成すればよいのでしょうか?
MVCのコントロールのロジックを理解したい...
User View Control
コードビハインドはありません。では、どのようにevents
of 要素を作成すればよいのでしょうか?
MVCのコントロールのロジックを理解したい...
MVC にはユーザー コントロールがないため、コントロールのロジックを気にする必要はありません。MVC にはポストバックはありません。MVC には ViewState はありません。MVC にはイベントはありません。
モデルがあります:
public class MyViewModel
{
public string Name { get; set; }
}
モデルを操作するコントローラー:
public class HomeController: Controller
{
public ActionResult Index()
{
return View(new MyViewModel
{
Name = "John"
});
}
}
モデルに含まれるデータをレンダリングするビュー:
@model AppName.Models.MyViewModel
<div>@Model.Name</div>
ビューがコントローラに何かを呼び出す必要がある場合、PostBacks やイベントを使用しなくなりました。GET リクエストを送信するためのアンカー リンクや POST リクエストを送信するためのフォームなど、標準の HTML アーティファクトを使用します。
例:
@Html.ActionLink("click me", "Foo", new { param = "123" })
param=123
クエリ文字列パラメーターとして渡す Foo コントローラー アクションへのアンカー リンクを生成します。
<a href="/home/foo?param=123">click me</a>
そして以下:
@using (Html.BeginForm("Foo", "Home"))
{
@Html.TextBoxFor(x => x.Name)
<input type="submit" value="OK">
}
Foo コントローラ アクションにいくつかの情報を POST できるようにする HTML フォームを生成します。
<form action="/Home/Foo" method="post">
<input type="text" id="Name" name="Name" value="" />
<input type="submit" value="OK" />
</form>
ASP.NET MVC を学習するための多くのチュートリアルとビデオを含む有用なリソース:
個人的にはコントローラーでロジックを実行するか、コントローラーに作業を行うビジネスロジッククラスを呼び出させます。コントローラーはビューを返します。モデルをコントローラーからビューに渡し、モデルをビューから部分ビューに渡します (MVC はユーザー コントロールに相当します)。
これは、ビュー/部分ビューにロジックがないことを意味し、非常にクリーンな方法でモデルをレンダリングできることを意味します
これは意味がありますか?
また、Scott Hanselman の NerdDinner プロジェクトもお勧めします。ASP.NET MVC フレームワークを学ぶのに最適なプロジェクトです。
Darin Dimitrov's answer も読んで読み直してください。MVC でデータを処理する方法の基本が含まれています。
WebForms ページのライフサイクルに執着しすぎているようです。
MVC の表面上のプログラミング方法論は、WebForms とは根本的に異なります。これは、Ruby On Rails に似ています。
MVC の学習に役立つリソースは次のとおりです。