Модель Свободной проверки - PullRequest
0 голосов
/ 16 мая 2019

У меня есть модель со списком предметов, и у меня есть правило для Property OrderQty, и оно должно быть числом (т. Е. 0-9).Если правило не будет выполнено, оно должно вернуть сообщение с ItemNo из списка объектов.

RuleFor(m => new { m.OrderQty, m.ItemNumber }).Must(x => validateint(x.OrderQty, x.ItemNumber)).WithMessage(string.Format(Item {0} Must be an integer",x.ItemNumber));

Класс My Items похож на

public class Item
{
    public string ItemNumber { get; set; }
    public string Description { get; set; }
    public string OrderQty{ get; set; }
    public string Status { get; set; }
}

Я ожидал, что вывод должен быть ErrorMessage как "Элемент 'Itemnumberhere' должен быть целым числом "

1 Ответ

0 голосов
/ 16 мая 2019
RuleFor(m => new { m.OrderQty, m.ItemNumber }).Must(x => validateint(x.OrderQty, x.ItemNumber)).WithMessage(x => $"Item {x.ItemNumber} Must be an integer"))

RuleFor(m => new { m.OrderQty, m.ItemNumber }).Must(x => validateint(x.OrderQty, x.ItemNumber)).WithMessage(x => string.Format("Item {0} Must be an integer",x.ItemNumber))

 RuleFor(m => m).NotEmpty().WithMessage(x => { return string.Format("Item {0} Must be an integer", x.ReportName); });

вы должны получить нужный вам формат.

Использование string.format и $ использует те же функции.Используйте метод $, чтобы сделать код более читабельным.Просто совет

...