Я пытаюсь использовать входной номер в MVC, он правильно принимает запятую (я использую культуру с запятой в качестве десятичного разделителя), и MVC принимает его с помощью пользовательского связывателя, который я сделал. Значение правильно сохраняется в базе данных и возвращается.
Проблема в том, что при передаче десятичного значения, которое выглядит как 0,231, в элемент управления числом, я думаю, он пытается отформатировать его в соответствии с моей культурой с запятой и не работает, поэтому ничего не появляется.
Биндер работает при возврате на сервер, но нужно ли мне что-то еще при возврате к элементу управления, чтобы он работал при возврате на страницу?
Мой контроль в виде бритвы:
@Html.EditorFor(model => model.DecimalValueForExample, new { htmlAttributes = new { @class = "form-control", @type = "number", @step = "any", @min = "0.001", autocomplete = "off" } })
Мой атрибут в модели представления:
[Display(Name = "DecimalValueForExample", ResourceType = typeof(Properties.Resources))]
[DisplayFormat(DataFormatString = "{0:0.###}", ApplyFormatInEditMode = true)]
[Range(0.001, double.MaxValue, ErrorMessageResourceName = "RangeErrorMessage", ErrorMessageResourceType = typeof(Properties.Resources))]
[Required]
public decimal DecimalValueForExample{ get; set; }
<input type="number" ...>
лучше всего работает с целыми числами, а не с числами с десятичной дробью. Попробуйте на w3schools: w3schools.com/html/html_form_input_types.asp - person mortb   schedule 13.04.2017