У меня проблема с валидацией в MVC, моя модель имеет свойство double, и когда я отправляю 10.30 или что-то еще с "." внутри он говорит мне, что «значение '10,30' недействительно для цены». Я провел небольшое исследование, и они говорят, что проверка модели должна быть инвариантной по культуре, я подумал, что это может быть проблемой, поскольку мой браузер и сервер работают на французском языке, но это не должно быть.
Вот мой код:
[HttpPost]
[ValidateAntiForgeryToken]
[Authorize(Roles = "Admin")]
[ValidateInput(false)]
public virtual ActionResult Edit(AuctionModel model)
{
if (ModelState.IsValid)
{
//do the work
}
return View(model);
}
public class AuctionModel
{
public string Id { get; set; }
[Required(ErrorMessageResourceType = typeof(Strings), ErrorMessageResourceName = "FieldMandatory")]
[LocalizedDisplayName("Title")]
public string Title { get; set; }
[Required(ErrorMessageResourceType = typeof(Strings), ErrorMessageResourceName = "FieldMandatory")]
[LocalizedDisplayName("Description")]
public string Description { get; set; }
[Required(ErrorMessageResourceType = typeof(Strings), ErrorMessageResourceName = "FieldMandatory")]
[LocalizedDisplayName("Photo")]
public string Photo { get; set; }
[Required(ErrorMessageResourceType = typeof(Strings), ErrorMessageResourceName = "FieldMandatory")]
[LocalizedDisplayName("StartDate")]
public DateTime StartDate { get; set; }
[Required(ErrorMessageResourceType = typeof(Strings), ErrorMessageResourceName = "FieldMandatory")]
[LocalizedDisplayName("Price")]
public double Price { get; set; }
}
Спасибо за помощь!