簡體   English   中英

從控制器到視圖的ASP.NET MVC傳遞ID

[英]ASP.NET MVC Passing ID from Controller to View

嗨,我正在嘗試將URL中的ID從控制器傳遞到視圖。 我還傳遞了一個視圖模型,該視圖模型包含兩個具有數據庫數據的模型。 還有另一種方法嗎? 路由圖已設置為發送ID。

該URL為http://localhost:55147/Home/ViewProject/8 ,顯然8是項目的ID,但似乎無法獲取。 我通過URL.Action將ID傳遞給ViewProject控制器函數,該ID具有通過另一頁上的參數傳遞的ID。

這是我的控制器:

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; }

我沒有發送項目列表,而是使用通過參數傳遞的Project.Find(id)發送了數據庫模型中定義的特定項目數據,就像您所說的那樣

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM