0
DisplayTemplates - > Object.cshtmlテンプレートを作成しようとしています。問題を示す例を提供します。表示テンプレートがオブジェクトテンプレートから選択されていません
私はこの
@model CAWP.Models.UserViewModel
<fieldset>
<legend>User Information </legend>
@Html.DisplayForModel(Model)
</fieldset>
私のASP.NET MVC DisplayTemplatesのフォルダのようView.cshtml
このモデルを表示したい
public class UserViewModel
{
public string FullName { get; set; }
public string Email { get; set; }
[DataType(DataType.Date)]
public string DateStamp { get; set; }
}
ビューモデルは、二つのファイルObject.cshtml
とDate.cshtml
を持っています。
Object.cshtml
が
@foreach (var prop in ViewData.ModelMetadata.Properties.Where(p => p.ShowForDisplay))
{
<div class="display-label">@prop.DisplayName</div>
<div class="display-field">@Html.Display(prop.PropertyName)</div>
}
Date.cshtml
はそう問題はObject.cshtml
で@Html.Display(prop.PropertyName)
がDate.cshtml
テンプレートにUserViewModel.DateStamp
を入れたことがないということであるUserViewModel.DateStamp
プロパティ
<time datetime="@ViewData.TemplateInfo.FormattedModelValue" data-date-format="date"></time>
用に特別に作成されるようになります。なぜそれが動作していないすべてのアイデア?