如何从我的控制器获取htmlAction id?

时间:2016-03-15 01:56:52

标签: c# visual-studio model-view-controller

网址设法解析内容,例如“mylink / Index / 1”但它没有在下一行读取我的ID。

  @Html.ActionLink("Submit school rating", "Index", "Review", new { id = Model.School_Code }, new { name = "Index" })

控制器(评论模型)

public ActionResult Index(int? id, ReviewSearch model)
        {
            reviews = revGateway.SelectAll();
            if (id == 0)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            reviews = reviews.Where(s => s.School_Code.Equals(id));

            if (reviews == null)
            {
                return HttpNotFound();
            }
            var pageIndex = model.Page ?? 1;
            model.SearchResults = reviews.ToPagedList(pageIndex, RecordsPerPage);

            return View(model);
        }

查看(学校模式)

  @Html.ActionLink("Submit school rating", "Index", "Review", new { id = Model.School_Code }, new { name = "Index" })

1 个答案:

答案 0 :(得分:1)

您的代码没有问题。我能够以同样的方式获得id。如果Model.School_Code有一些值,请确保。尝试先传递一些硬核值,然后检查是否能够获得该值。

您也可以使用RouteData获取相同的值,如下所示:

    public ActionResult Test()
    {
        int id;
        int.TryParse(RouteData.Values["id"].ToString(), out id);

        return View();
    }

查看

@ Html.ActionLink("提交学校评分","测试","默认",新{id = 1},新{name =&# 34;索引"})