В моем представлении есть строка Html.EditorFor:

@Html.EditorFor(model => model.DateCreditEarned, 
     new { htmlAttributes = new { @class = "form-control" } })

Когда я смотрю на визуализированный HTML-код, я вижу, что у ввода есть атрибут «type = date». Есть ли способ использовать EditorFor и удалить атрибут типа? Таким образом, я могу получить желаемую функциональность, не вызывая проблем с Edge.

<input 
    class="form-control datecontrol" 
    data-val="true" 
    data-val-date="The field Date Credit Earned must be a date." 
    data-val-required="The Date Credit Earned field is required."     
    id="DateCreditEarned" 
    name="DateCreditEarned" 
    type="date" value="6/27/2016">

Обновить

Я обнаружил, что могу использовать Html.TextboxFor без каких-либо проблем с Edge (т.е. Edge переопределяет мой DatePicker Bootstrap своим собственным). Но я надеялся, что смогу сделать то же самое с EditorFor.

0
user4864716 27 Июн 2016 в 20:05
1
Вы пробовали использовать атрибут [DataType(DataType.Text)] в свойстве модели?
 – 
juunas
27 Июн 2016 в 20:58
Я не пробовал, пока вы не упомянули об этом сейчас. Отрисованный HTML - это то, что мне нужно: <input class="form-control text-box single-line" data-val="true" data-val-date="The field DateCreditEarned must be a date." data-val-required="The DateCreditEarned field is required." id="DateCreditEarned" name="DateCreditEarned" type="text" value="6/27/2016 12:04:42" />
 – 
user4864716
27 Июн 2016 в 22:06
Зачем вам использовать EditorFor(), когда TextBoxFor() генерирует правильный html?
 – 
user3559349
28 Июн 2016 в 02:10
Чистая лень. Я начинаю с кода, созданного автоматически, поэтому, чем меньше мне приходится набирать заново, тем больше он мне нравится.
 – 
user4864716
28 Июн 2016 в 03:06

1 ответ

Лучший ответ

Что ж, сделав мой комментарий ответом, в ASP.NET MVC вы обычно делаете что-то декларативно в моделях. В этом случае требовалось текстовое поле, поэтому свойство модели должно быть таким:

[DataType(DataType.Text)] 
public DateTime DateCreditEarned { get; set; }

Решил проблему.

1
juunas 27 Июн 2016 в 22:30