Я знаю, что маршруты по умолчанию в MVC включают параметр id, который часто сопоставляется с идентификатором объекта, поскольку он хранится в базе данных. Теперь, часто это нормально, но как насчет того, когда вы не хотите, чтобы кто-то мог манипулировать им? Честно говоря, во многих бизнес-приложениях это очень распространено. Например, вы не хотите, чтобы кто-то менял номер учетной записи (не лучший пример, но вы поняли эту идею) по URL-адресу по понятным причинам. Таким образом, вам нужно будет проверить номер учетной записи для зарегистрированного пользователя по каждому запросу. Очевидно, что это не реалистичное решение, и в веб-формах многие люди будут хранить что-то подобное в сеансе. Я стараюсь слишком мало полагаться на сессию в MVC, но, кроме этого, я бы просто пошел в старую школу и использовал скрытые поля?ASP.NET MVC Использование идентификаторов в URL-адресах
Как к этому подходят другие?
Я думаю, что атрибут 'Authorize' поможет вам в вашей ситуации. См. Пример NerdDinner, если вы не знакомы с атрибутом: http://nerddinnerbook.s3.amazonaws.com/Part9.htm –