3つのドロップダウンリストを使用して、編集者Tempale Partial Pageビューから更新しない値

StackOverflow https://stackoverflow.com/questions/4262012

質問

日、月、年に3つのドロップダウンリストがあるDateTimeのPartialPageViewに編集された編集を持っています。値を更新しようとすると、ポストバックの日付は常に01/01/0001です。何か案は?

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>
<%= Html.DropDownListFor(x => x.Value.Day, Enumerable.Range(1, 31).Select(i => new SelectListItem { Value = i.ToString(), Text = i.ToString(), Selected = i == Model.Value.Day ? true: false})) %>
<%= Html.DropDownListFor(x => x.Value.Month, Enumerable.Range(1, 12).Select(i => new SelectListItem { Value = i.ToString(), Text = System.Globalization.CultureInfo.InvariantCulture.DateTimeFormat.GetMonthName(i), Selected = i == Model.Value.Month ? true : false }))%>
<%= Html.DropDownListFor(x => x.Value.Year, Enumerable.Range(1900, 110).Select(i => new SelectListItem { Value = i.ToString(), Text = i.ToString(), Selected = i == Model.Value.Year ? true : false }))%>
役に立ちましたか?

解決

このケースを処理するには、必要な場合があります カスタムモデルバインダーを書きます.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top