Передача идентификатора ASP.NET MVC из контроллера в представление - PullRequest
0 голосов
/ 17 мая 2018

Привет. Я пытаюсь передать идентификатор из URL-адреса из контроллера в представление. Я также передаю модель представления, которая содержит две модели, которые имеют данные из базы данных. Есть ли другой способ сделать это? Карта маршрута была настроена для отправки идентификатора.

URL будет http://localhost:55147/Home/ViewProject/8, который, очевидно, 8 является идентификатором проекта, но, похоже, он этого не получает. Я передаю идентификатор функции контроллера ViewProject по URL-адресу. Действие, в котором идентификатор передается через параметр на другой странице.

Вот мой контроллер:

public ActionResult ViewProject( int? id )
{
    if( id == null )
    {
        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
    }
    BextecODBEntities DB = new BextecODBEntities();
    var mymodel = new Multipledata();
    mymodel.projectss = DB.Projects.ToList();
    mymodel.projectnotess = DB.ProjectNotes.ToList();
    return View("ViewProject", mymodel);
}

Вот мой взгляд:

@foreach(var item in Model.projectss)
{
    if( item.ID.ToString() == Html.ViewContext.RouteData.Values["id"].ToString() )
    {
        @Html.DisplayText("You have clicked on Project ID:" + item.ID.ToString())
    }
}

Моя модель с несколькими данными содержит:

public IEnumerable<Projects> projectss { get; set; } 
public IEnumerable<ProjectNotes> projectnotess { get; set; }

1 Ответ

0 голосов
/ 22 мая 2018

Вместо отправки списка проектов я отправил определенные данные проекта, которые я определил в модели базы данных, используя Project.Find (id), переданный через параметр, как вы сказали

...