Asp.Net MVC の「厳密に型指定されたビュー データ」とはどういう意味ですか?
ありがとう
ASP.NET MVC の厳密System.Web.Mvc.ViewPage<T>
に型指定されたビューは、T によって指定された型の Model プロパティを継承し、それを含みます。これにより、インテリセンスがビューで動作できるようになります。
すべてのビューにはModel
プロパティがあります。View を厳密に型指定することは、それを some から継承させることを意味しViewPage<T>
、Model プロパティは T の型になります。ビューを厳密に型指定しない場合、Model は "Object" 型になります。
ビューのモデルを厳密に型指定すると、モデルのプロパティに直接アクセスできるという利点があります。「マジック ストリング」を使用して ViewData ディクショナリにアクセスする代わりに、インテリセンスとコンパイラ チェックを取得します。これは、モデルが変更された場合に実行時に壊れてしまいます。
たとえば、
public class Person
{
public int Age { get; set; }
}
クラスで強く型付けされたビューを作成すると、ビューテンプレートからPerson
アクセスできるようになります。Model.Age
ビューが厳密に型指定されていない場合はModel
、アクセスするプロパティがなく、明示的に型にキャストするか、ViewData ディクショナリを介してデータを渡す必要があります。
このビューを厳密に型指定するには、単純に から継承させViewPage<Person>
ます。
ビューに大まかに関連するいくつかのデータ (連絡先情報、販売予測、通話履歴) を表示する必要があるとします。これらを ViewData に単純に挿入して引き出し、View から厳密に型指定することもできますが、より良いアプローチは、これらのそれぞれをカプセル化するカスタム モデルを作成することです。次に、View 自体をこのカスタム モデルに強く型付けします。型の安全性に関与し、テスト容易性などの他の利点の中でも、コードアシストをより直感的にします。