Проверка с аннотациями данных не работаетC#

Место общения программистов C#
Anonymous
Проверка с аннотациями данных не работает

Сообщение Anonymous »

Я разрабатываю REST API с моделью покупки клиента. Я применил некоторые проверки, но увидел, что проверки свойств с десятичным типом не работают, однако проверки свойств со строковым типом работают успешно.
У меня такое поведение. если не добавить свойство, например, Total, то проверка не применяется и это свойство принимает значение по умолчанию для десятичных типов, то есть 0,0.
То есть у меня есть следующая модель:

Код: Выделить всё

public class CustomerPurchase : BaseEntity
{
[Required(ErrorMessage = "PurchaseFolioRequired")]
public string Folio { get; set; }

[Required(ErrorMessage = "PurchaseIvaRequired")]
[Range(typeof(Decimal), "0", "1000000000000000000", ErrorMessage = "PurchaseInvalidVat")]
public decimal Iva { get; set; }

[Required(ErrorMessage = "PurchaseSubtotalRequired")]
[Range(typeof(Decimal), "0", "1000000000000000000", ErrorMessage = "PurchaseInvalidSubtotal")]
public decimal Subtotal { get; set; }

[Required(ErrorMessage = "PurchaseTotalRequired")]
[Range(typeof(Decimal), "0", "1000000000000000000", ErrorMessage = "PurchaseInvalidTotal")]
public decimal Total { get; set; }

[Required(ErrorMessage = "PurchaseTotalLettersRequired")]
public string TotalLetters { get; set; }

[Required(ErrorMessage = "PurchaseEmployeeRequired")]
[BsonRepresentation(BsonType.ObjectId)]
public string UserId { get; set; }

[Required(ErrorMessage = "PurchaseProductRequired")]
[MinLength(1, ErrorMessage = "PurchaseProductRequired")]
public ProductSold[] Products { get; set; }

[Required(ErrorMessage = "PurchasePaymentRequired")]
[MinLength(1, ErrorMessage = "PurchasePaymentRequired")]
public Payment[] Payments { get; set; }

[Required(ErrorMessage = "PurchaseClientRequired")]
public Client Client { get; set; }
}
Это приложение неверно? Или есть способ строго применить эту проверку.
Спасибо за чтение

Подробнее здесь: https://stackoverflow.com/questions/641 ... s-not-work

Вернуться в «C#»