私は ASP.net MVC に取り組んでいます。ここで、M は単に"Model"を表します。データベースにマップできるモデル。
通常、私は View を Model に強くバインドします。
しかし、最近、単なるモデルとは異なるビューモデルについて聞いていました。
ViewModel はMVC
またはMVVM
( ModelViewViewModel) の一部ですか?
ViewModel と Model の基本的な違いは何ですか。MVCでの作業方法として、小さな例を挙げたいと思います:
私の見解:
<% using (Ajax.BeginForm("TestAjax", "Reviewer", new AjaxOptions { OnSuccess = "Callback", OnFailure = "Failed" }))
{ %>
<table align="center">
<tr>
<td class="tdCol1Align">
<label>
Number1</label>
</td>
<td class="tdCol2Align">
<%=Html.TextBoxFor(Model => Model.number1)%>
</td>
</tr>
<tr>
<td class="tdCol1Align">
<label>
Number2</label>
</td>
<td class="tdCol2Align">
<%=Html.TextBoxFor(Model => Model.number2)%>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="Add" class="button" />
</td>
</tr>
</table>
<%
}
%>
私のモデル:
public class AddModel
{
public int number1
{
get;
set;
}
public int number2
{
get;
set;
}
}
そして最後に私のコントローラー:
[HttpPost]
public JsonResult TestAjax(AddModel model)
{
int iSum = model.number1 + model.number2;
return Json(new { Sum = iSum });
}
それでおしまい 。ViewModel
これがどこで絵になるのか理解できません
以下について私を明確にしてください:
1.ViewModelとModelの基本的な違い
2.View Model は MVC または MVVM アーキテクチャの一部ですか?
ViewModels を使用する場合に上記の例を実装するにはどうすればよいですか?
ビュー モデルが MVC の一部である場合、アプリケーションのフォルダー構造のどこに表示されますか?