Привязка модели не выполняется из формы на странице Razor с помощью Tag Helpers - PullRequest
0 голосов
/ 25 июня 2019

У меня есть модель "позади" моей страницы со свойством, которое является моделью моей формы поиска.Моя форма работала нормально, а затем внезапно все свойства перестали связываться, и мой обработчик действий Post обнаружил, что модель формы поиска имеет нагрузки null s.

1 Ответ

0 голосов
/ 25 июня 2019

Когда вы используете Tag Helpers для формы и добавляете элементы управления вводом, вы можете добавить свой собственный name="myProperty" к каждому, или вы можете опустить это, и этот атрибут генерируется автоматически.

Представьте, что у вас есть 10 входови вы добавляете новый, но забываете добавить атрибут name к этому последнему, а затем помощник добавляет свой собственный, например "SearchForm.MyProperty".

Предыдущие 10 заканчиваются name="myProperty", нопоследний - name="SearchForm.MyProperty".

В этой ситуации привязка модели не удалась, предположительно , потому что эти пути смешаны, а один, совпадающий с SearchForm.MyProperty, более специфичен, поэтому другие выглядят так, как будто они должныпривязка к свойствам на модели страницы.

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

Исправление может заключаться в том, чтобы вообще не вводить свои собственные атрибуты name для входов.

Улучшение привязки Razor (для устранения сюрприза здесь) может заключаться в том, что всегда происходит сбой, если толькоимена имеют префикс точно, хотя это нарушит существующий код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...