Синтаксис выражения ASP.NET BeginForm () - PullRequest
2 голосов
/ 05 мая 2009

Я хотел бы использовать синтаксис на основе выражений для Html.BeginForm в ASP.NET MVC (например, Html.BeginForm (a => a.ActionForSubmit ();) для повышенной тестируемости, которую он дает вам.

Мне неясно, что делать, если соответствующее действие имеет параметры. Например, у меня есть действие входа в систему, которое выполняется только через HTTP POST и имеет два параметра: имя пользователя и пароль.

Если я использую синтаксис на основе выражений, я получаю Html.BeginForm (a => a.Login (null null)); - Нулевая пара (требуется согласно сигнатуре действия) мне кажется излишней для выражения BeginForm. Я неправильно указал выражение?

Если бы соответствующее действие было взять экземпляр FormCollection, как это будет работать с выражением?

Спасибо, Дерек.

1 Ответ

5 голосов
/ 05 мая 2009

Вы можете просто ввести string.Empty, и он будет заполнен при отправке формы.

Я бы не прошел в ноль. Что произойдет, оно примет сначала то, что вы передали в выражение, а затем перезапишет это чем-либо из опубликованной формы. Я считаю, что рекомендуется использовать string.Empty вместо null.

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