MVC3 Необязательные параметры - PullRequest
1 голос
/ 18 марта 2012

Это продолжение этого: Что MVC3 делает с дополнительными параметрами C #?

У меня есть действие со следующей подписью:

public ViewResult Show(int Id, PublishingErrorSummary pubErrors=null, String title=null)

При запросе к серверу / show / 1 pubErrors не равно NULL, но заголовок имеет значение NULL. Как это возможно? Это всего лишь два объекта, но string как-то удается стать нулевым. Где я могу это исправить?

Редактировать: добавлено определение класса

public class PublishingErrorSummary
{
    public List<string> StepOneErrors { get; set; }
    public List<string> StepTwoErrors { get; set; }
    public List<string> StepThreeErrors { get; set; }
    public List<string> StepFourErrors { get; set; }
}

1 Ответ

3 голосов
/ 18 марта 2012

PublishingErrorSummary - сложный объект. Связыватель модели по умолчанию всегда инициализирует сложные объекты. Не имеет смысла устанавливать значение по умолчанию на ноль. То же самое относится и к параметру title. Строки являются ссылочными типами, и их значение по умолчанию будет равно нулю, если параметр запроса title не отправлен.

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