Пользовательская проверка формы в Blazor

#blazor

#blazor

Вопрос:

Я хотел бы проверить несколько связанных свойств в форме Blazor.

В моем случае; Я хотел бы убедиться, что количество строк в двух InputArea s одинаково.

Ответ №1:

В Blazor этот сценарий обрабатывается business logic validation :

https://docs.microsoft.com/en-us/aspnet/core/blazor/forms-validation?view=aspnetcore-5.0#business-logic-validation

другие альтернативы

Также можно использовать аннотации данных для нескольких полей:

Выполняет проверку на основе нескольких свойств класса

  • Создайте пользовательский атрибут проверки данных для оформления отдельного свойства.
  • Создайте пользовательский атрибут проверки данных, чтобы украсить класс модели.

http://www.binaryintellect.net/articles/55bef03e-3d41-4a0a-b874-78b7c7a9ce36.aspx

Другой подход заключается в использовании OnSubmit пользовательского кода для запуска проверки и проверки значений полей.

https://docs.microsoft.com/en-us/aspnet/core/blazor/forms-validation?view=aspnetcore-5.0

https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.components.forms.editform.onsubmit?view=aspnetcore-5.0#Microsoft_AspNetCore_Components_Forms_EditForm_OnSubmit

Другой вариант — создать model из вашего form ; а затем использовать model validation :

Также можно использовать FluentValidation с Blazor: https://chrissainty.com/using-fluentvalidation-for-forms-validation-in-razor-components /

p.s. Я плохо знаю эту область; так что, вероятно, что-то упускаю