Как инсертить значения с точкой или запятой в ASP.NET Core 2.0?
То, что Вы отметили поле как [Required], означает только то, что это поле должно быть обязательно заполнено. Однако, логику проверки Вы не указывали. А виноваты Microsoft...
AleXr64 на GitHub предложил добавить [RegularExpression(@"^\d+.?\d{0,2}$", ErrorMessage = "Invalid Target Price; Maximum Two Decimal Points.")]
Может быть кому-то и интересно, но этот вариант тоже не помог.