此代碼由一些ASP.Net MVC 2代碼在這個教程轉換:
MVC 2 Editor Template with DateTimeASP.Net MVC 3 EditorTemplate爲日期時間字段錯誤
它是被存儲爲「EditorTemplates /日期時間日期時間字段的自定義EditorTemplate .cshtml」。
CS1973:
@Model DateTime?
@Html.TextBox("", (Model.HasValue ? Model.Value.ToShortDateString() : string.Empty), new { @class = "datePicker" })
但是使用@Html.EditorFor(model => model.NewAbsence.StartDate)
當我得到以下錯誤「System.Web.Mvc.HtmlHelper」有一個名爲「文本框」不適用的方法,但似乎有通過一個擴展方法名稱。擴展方法不能動態分派。考慮轉換動態參數或調用擴展方法而不使用擴展方法語法。
我在這裏看到了一些類似的帖子,提到了鑄造EditorFor方法的參數,但是我似乎無法得到這個在我的例子中工作。
有人請指出我需要改變我的代碼。謝謝。
什麼類型是「Model」? – SLaks 2011-02-14 13:24:08
該視圖實際上基於包含此表單的自定義數據的ViewModel。表單是一個Create表單,所以model.NewAbsence的類型爲Absence,它具有默認值。它看起來像部分EditorTeplate被訪問,所以類型會有DateTime? – Banford 2011-02-14 13:57:09