gpt4 book ai didi

c# - MVC 4 Action 方法可为空的字符串参数需要错误

转载 作者:太空宇宙 更新时间:2023-11-03 15:43:55 27 4
gpt4 key购买 nike

我的 MVC4 项目 (vs2010) 中有以下代码,我是这个 MVC 的新手。请帮忙

   public ActionResult ViewAlbum(string id)
{
var searchStr = id;
TB_ALBUM_MASTER tb_album_master = db.TB_ALBUM_MASTER.Single(t => t.ALBUM_NAME.ToLower() == searchStr.ToLower());
if (tb_album_master == null)
{
return HttpNotFound();
}
return View(tb_album_master);

}`

它在操作方法定义行上给我这个错误

Error 131 The type 'string' must be a non-nullable value type in order to use it as parameter 'T' in the generic type or method 'System.Nullable'

这是我的 RouteConfig.cs

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}

最佳答案

最后我知道我需要修复我的 RouteConfig.cs 以启用我的新路由,其中​​ id 参数将是一个字符串并且它可以为 null。

所以这是我的修复:这是我的新 RouteConfig.cs

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
name: "Defaults",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = "" }
);

routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

}

(请建议我处理此类异常的方法是否错误,或者是否有任何其他修复方法。)

关于c# - MVC 4 Action 方法可为空的字符串参数需要错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29026272/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com