Я слежу за приложением ASP.Net MVC3 Music Store, и я заметил это.
Вот мое действие Details в контроллере Store.
public ActionResult Details(int id)
{
var album = new Album() { Title = "Dark Side of The Moon" + id };
return View(album);
}
//View
@model MvcMusicStore.Models.Album
@{
ViewBag.Title = "Details";
}
<h2>Album Name: @Model.Title</h2>
Это работаетхорошо, однако, когда я пытался изменить имя параметра с «id» на «albumId», я получаю следующую ошибку:
Словарь параметров содержит пустую запись для параметра 'albumid', который не может быть очищенвведите «System.Int32» для метода «System.Web.Mvc.ActionResult Details (Int32)» в «MvcMusicStore.Controllers.StoreController».Необязательный параметр должен быть ссылочным типом, обнуляемым типом или быть объявлен как необязательный параметр.Имя параметра: параметры
Почему работает переменная с определенным именем, но с другим именем выдает эту ошибку?MVC делает что-то автоматически с именами переменных "id"?