昨日私は、ViewModelとViewの責任について私の仕事のパートナーの一人と少し議論しました。ビューの編集/新規モードなど、さまざまなコンテキストで変更されるテキストがあります。チームのプログラマーの一つは、このように気にいらを書いた:ViewModelまたはViewの責任を描画ロジック
@if (Model.IsNew)
{
@Resources.New;
}
else
{
@(Resources.Editing + " " + Model.Name);
}
私はこのロジックがViewModelに責任であることを守る:
のViewModelには:ビューで次に
public string PageTitle => IsNew ? Resources.New : $"{Resources.Editing} {Name}";
:
<h2>
@Model.PageTitle
</h2>
しかし、私の同僚はそれが印刷ロジックであることを守っているので、Viewには責任があります。
どちらも私たちの議論がありますが、私はコミュニティの意見を知りたいと思います。
これには同意しないでください。すべてのViewModelにIsNewプロパティがあるわけではありません。あなたは彼があらゆるページの助けを借りなければならないと思いますか?簡単にしてください - ViewModelにコードを置きます。 – KevDevMan