簡體   English   中英

如何將數據傳遞到局部視圖?

[英]How to pass data to a partial view?

我正在使用帶有實體框架的ASP.NET MVC。 我有兩個查詢以在同一視圖中顯示單獨的表。

一個是

 var query = from s in db.tblSites
                        where s.SiteStatus== 1
                        select s;

另一個是

var query2 = from s in db.tblSites
                            where s.SiteStatus== 0
                            select s;

所以我要使用@Html.RenderPartial

但是我不知道如何傳遞數據。

我想將query2數據傳遞到我的局部視圖。

 @Html.Partial("RemoveContract",--------) //I don't know how to pass data.

這是我的控制器

 public ActionResult AddContract(int id)
        {
            var query = from s in db.tblSites
                            where s.SiteStatus== 1
                            select s;

    var query2 = from s in db.tblSites
                                where s.SiteStatus== 0
                                select s;

            return View(query .ToList());

        }

怎么做?

您可以像這樣將query2添加到控制器的ViewBag中:

public ActionResult AddContract(int id)
{
    ...
    this.ViewBag.Query2 = query2;
    return View(query .ToList());
}

然后,只需使用Partial方法的重載傳遞您希望部分視圖作為參數呈現的視圖模型。

@Html.Partial("RemoveContract", ViewBag.Query2)

注意 :根據您的設置,您可能需要使用this.ViewBag.Query2 = query2.ToList()來實現查詢,然后再將其傳遞給視圖。

只需將Model傳遞給@Html.Partial

@Html.Partial("RemoveContract",Model) 

如果要將query2傳遞給您的partial,則需要這樣做:

public ActionResult AddContract(int id)
        {
            var query = from s in db.tblSites
                            where s.SiteStatus== 1
                            select s;

    var query2 = from s in db.tblSites
                                where s.SiteStatus== 0
                                select s;

//return View(query .ToList());
return View(query2 .ToList());


        }

暫無
暫無

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

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