Параметры MVC3 в методах контроллера - PullRequest
0 голосов
/ 08 декабря 2011

У меня есть контроллер AuctionsController с методом

public ActionResult BidsByAuction(int auctionId, int page = 1)

При переходе к /Auctions/BidsByAuction/38 я получаю следующую ошибку:

Словарь параметров содержит пустую запись для параметра 'auctionId 'необнуляемого типа' System.Int32 'для метода' System.Web.Mvc.ActionResult BidsByAuction (Int32) 'в' Extranet.Controllers.AuctionsController '.Необязательный параметр должен быть ссылочным типом, обнуляемым типом или быть объявлен как необязательный параметр.Имя параметра: параметры

Что здесь не так?

Ответы [ 3 ]

6 голосов
/ 08 декабря 2011

Вы создали маршрут cutom для вашего метода, который принимает AuctionID в качестве параметра? Если нет, то по умолчанию параметр называется «id».

Если вы хотите аукцион, то вам нужно создать новый маршрут с именем аукциона.

Не совсем уверен, что это решит вашу проблему, поскольку может быть проблема и с необязательным параметром, но исправьте его и посмотрите, что вы получите.

0 голосов
/ 09 декабря 2011

Спасибо всем. Ошибка школьника. Вы были в порядке, я должен был использовать идентификатор в качестве имени параметра в методе контроллера. Вот почему я получил эту ошибку.

0 голосов
/ 08 декабря 2011

«38» сопоставляется с последним параметром маршрута по умолчанию {id}.Второй параметр должен быть необязательным, чтобы его не учитывать, если он не указан в строке запроса.

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