【发布时间】:2012-10-07 20:31:47
【问题描述】:
我正在编写的一个小应用程序有问题。现在要么我的错误出现在我的控制器类中,要么出现在 Routes 中。见下图。
控制器类。
这是我的默认路线。
这是我运行时遇到的错误。 图片不是很清楚,但上面写着:
参数字典包含“GlobalUnited.WebUI.Controllers”中方法“System.Web.Mvc.ActionResult Detail(Int32)”的不可空类型“System.Int32”的参数“playerId”的空条目.PlayerController'。可选参数必须是引用类型、可空类型或声明为可选参数。 参数名称:参数
我阅读了这里的一些帖子,特别是: Similar Link
当 Daniel Renshaw 说:
首先,我建议您使用 MVC 的参数自动处理,而不是自己将它们从请求中拉出。您的控制器操作有一个似乎被忽略的 id 参数 - 使用它并添加其他类似的参数来获取输入参数。
无论如何,在阅读了那篇文章后,我将 RouteConfig 文件更改为:
我仍然收到此错误。它说:
名为“DefaultApi”的路由已在路由集合中。路由名称必须是唯一的。 参数名称:名称
我什至尝试将我的 Detail 操作参数更改为:注意 int 吗?宣言
更改后出现此错误:
我可以做些什么来解决这个问题,不那么复杂吗? 我们将不胜感激所有帮助,谢谢。
【问题讨论】:
-
+1 用于使用深色主题。 :)
-
请将代码发布为代码,而不是图像。
-
感谢 Henk Holterman,我会确保下次这样做
-
你使用的网址是什么?
-
@MystereMan
http://localhost:5169/Player/Detail?PlayerId=1
标签: c# visual-studio routes asp.net-mvc-4 visual-studio-2012