我正在通过一个基础教程来教你如何让页面通过url接受一个参数,例如http://localhost:0000/Movies/edit/“number”,其中number是任意整数,页面将显示整数。我的代码是:
public ActionResult Edit(int i)
{
return Content("id=" + i);
}
这告诉我url包含方法“Edit(Int32)”的非可空类型“System.Int32”的空参数“i”。 我知道链接是正确的,因为我有另一个页面不通过URL接受变量,并且工作正常。 我已多次观看该教程,但在我们的代码之间找不到任何区别。
答案 0 :(得分:0)
确保您发送的参数不为空,如果它为空,则由于您的应用的默认路由配置。 您将在Rout_config.cs
中的app_start文件中找到Route配置public ActionResult Edit(string Id)
{
return Content("id=" + Id);
}
答案 1 :(得分:0)
以下是问题作者Jack Tyler在问题this revision中撰写的内容。
我将变量“i”更改为“Id”,我没有意识到我必须将该变量命名为与路径配置相同。