Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我的路线怎么了?_C#_Asp.net Mvc_Asp.net Mvc 2_Asp.net Mvc Routing - Fatal编程技术网

C# 我的路线怎么了?

C# 我的路线怎么了?,c#,asp.net-mvc,asp.net-mvc-2,asp.net-mvc-routing,C#,Asp.net Mvc,Asp.net Mvc 2,Asp.net Mvc Routing,当我从列表视图中单击编辑链接时,出现以下错误 参数字典包含“WebUI.Controllers.EnvironmentsController”中“System.Web.Mvc.ActionResult Edit(Int32)”方法的不可为空类型“System.Int32”的参数“envId”的空条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。 参数名称:参数 这是我的密码: 您自动生成的链接显示: <td><%= Html.ActionLink("Ed

当我从列表视图中单击编辑链接时,出现以下错误

参数字典包含“WebUI.Controllers.EnvironmentsController”中“System.Web.Mvc.ActionResult Edit(Int32)”方法的不可为空类型“System.Int32”的参数“envId”的空条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。 参数名称:参数

这是我的密码:






您自动生成的链接显示:

<td><%= Html.ActionLink("Edit", "Edit", new { id= Model.EnvironmentID} )%></td>
MVC的模型绑定按名称将操作中的参数挂钩,默认路由假定第一个参数是名为
id
int
。将
Edit()
参数的名称更改为
id
,它应该可以工作

或者,您可以将ActionLink parameters对象更改为
new{envId=Model.EnvironmentID}
,但这将导致您的URL如下所示:

http://localhost/Env/Edit?envId = 1
与此相反:

http://localhost/Env/Edit/1

我有一种感觉,这取决于你试图打开哪个URL。。。
http://localhost/Env/Edit/1