| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка под ASP.NET > Некоректрый параметр при вызове метода в MVC |
| Автор: Proger89 6.5.2010, 19:03 | ||||||
| Доброго времени суток. Мне нужно разработать простой сайт на MVC, но у меня возникло две проблемы, которые связаны с одной и той-же ошибкой. (для наглядности я прикрепил часть изображения схемы своей БД). Для начала я создал страничку для отображения класса Performer. Там выводиться класс всех исполнителей + можно нажать на кнопку Details и посмотреть подробности. URL при просмотре подробной информации выглядит как http://.../Performer/Details/1, но если в качестве Id написать очень большое число (метод принимает int), то вываливается такая ошибка:
Вторая проблема состоит в том, что я хотел создать страницу выводящую все тексты песен для конкретного исполнителя (связь LinqPerformer -> LinqLyric на картике). Я написал следующий код:
Потом я создал View для этого класса. Но когда я перехожу по URL http://.../Lyric/Index/1 получаю:
Что я делаю не так? Заранее благодарен. |
| Автор: Любитель 6.5.2010, 22:40 |
| 1. Если параметр роутинга не может быть сконвертирован в нужный экшен-параметр, то логично что получится, что этот параметр останется без значения. Если выше приложение должно реагировать специальным образом на такие урл-ы - можно задать параметру значение по умолчанию (через атрибут DefaultValue или синтаксис 4-го шарпа) или сделать его нуллабельным (и обрабатывать в коде ситуацию для null-значения). 2. Со вторым предполагаю, что у вас используется дефолтная таблица роутинга. В ней нигде нет параметра PerformerId (дефотная схема: {controller}/{action}/{value}). И используйте, плиз, quote вместо code, если длинные строки есть |