У меня небольшая проблема с десятичным значением в приложении ASP.NET MVC, которое я пишу. У меня есть привязка NPoco к таблице базы данных и запись Price
, которая определена как десятичная (9,2). Вот модель записи, которую я использую:
[Display(Name = "Price")]
[Required]
[DisplayFormat(DataFormatString = "{0:0,##}", ApplyFormatInEditMode = true)]
public decimal Price { get; set; }
Далее у меня есть нокаутированная модель JS, которая связывает все параметры и работает нормально. Любое другое поле занято и правильно связано. Что касается цены, у меня есть этот HTML-код:
<input type="text" required data-bind="value: Price" class="form-control input-sm" id="priceID"/>
Теперь, если я вставляю значение с запятой, все работает нормально, и значение вставляется в БД правильно (например, 15,20), но если я использую точку, значение 0,00 вставляется в базу данных. Самое смешное, когда я перезагружаю объект для редактирования, значение цены устанавливается и пишется с точкой внутри html-страницы.
Итак, мой вопрос: есть ли способ принять оба формата (значит, с точкой и запятой)?