我正在编写的一个小应用程序有问题。现在要么我的错误出现在我的控制器类中,要么出现在 Routes 中。请参阅下面的图片。
控制器类。
这是我拥有的默认路线。
这是我运行时遇到的错误。图片不是很清楚,但上面写着:
参数字典包含“GlobalUnited.WebUI.Controllers.PlayerController”中方法“System.Web.Mvc.ActionResult Detail(Int32)”的不可空类型“System.Int32”的参数“playerId”的空条目。可选参数必须是引用类型、可空类型或声明为可选参数。参数名称:参数
我在这里阅读了一些帖子,特别是: 类似链接
当 Daniel Renshaw 说:
首先,我建议您使用 MVC 对参数的自动处理,而不是自己将它们从 Request 中提取出来。您的控制器操作有一个似乎被忽略的 id 参数 - 使用它并添加其他类似的参数来获取输入参数。
无论如何,在阅读了那篇文章后,我将 RouteConfig 文件更改为:
我仍然得到这个错误。它说:
名为“DefaultApi”的路由已在路由集合中。路由名称必须是唯一的。参数名称:名称
我什至尝试将我的 Detail 操作参数更改为:注意 int?宣言
更改后出现此错误:
我可以做些什么来解决这个问题,不那么复杂的东西吗?所有帮助将不胜感激,谢谢。