これを行うにはいくつかの方法があります。私は、データベーステーブルにマップするクラスは「純粋」のままにして、データベースの実際のフィールドを反映するプロパティのみを含める必要があると考えていますが、どちらの方法でもプロセスは似ています。
ビューに表示するために必要な情報を保持するモデルクラスを作成できます。
public ViewResult Details(int id)
{
UserInformation info = ... // get the information object from the database
UserInformationModel model = new UserInformationModel {
Id = info.Id,
Details = String.Join(" ", new[] { info.Name, info.Address, info.PhoneNumber }) );
}
return View(model);
}
データバインドされたオブジェクトに追加する場合の代替手段:
public class UserInformation
{
...
public string Details
{
get
{
return String.Join(" ", new[] { info.Name, info.Address, info.PhoneNumber });
}
}
....
}
次に、特定のモデルではなく、データオブジェクト全体をビューに渡します。