路线到新闻页面 - 不会显示页面

时间:2017-09-18 12:42:10

标签: c# model-view-controller routes

这就是我在做新闻页面的方式,现在我就是这样:

ACTION_SEND

现在我有:www.helloworld.com/news/hello-world/123

我将有www.helloworld.com/hello-world/123

我在这里也有这个共同内容

routes.MapRoute("News", "News/{url}/{id}", new
        {
            controller = "News",
            action = "Index",
            url = UrlParameter.Optional,
            id = UrlParameter.Optional
        });

错误:

  

参数字典包含'HelloWorld.Controllers中方法'System.Web.Mvc.ActionResult Index(System.String,Int32)'的非可空类型'System.Int32'的参数'id'的空条目。 NewsController”。可选参数必须是引用类型,可空类型,或者声明为可选参数。   参数名称:参数

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

1 个答案:

答案 0 :(得分:0)

这不是在查询字符串中传递值的好方法。首先,您需要创建一个NewsContoller,之后您的URL将是www.helloworld.com/news/123,您需要在控制器中创建一个操作方法 -

 public class NewsController : Controller
{
    public ActionResult Index(int id)
    {
        return View();
    }
}

您也可以参考以下链接获取更多信息

https://docs.microsoft.com/en-us/aspnet/mvc/overview/older-versions-1/controllers-and-routing/asp-net-mvc-routing-overview-cs

如果你愿意,请标记答案。