2017-06-15 189 views
0

我遇到問題,將單獨的模型和局部視圖傳遞到我的索引頁面。下面我就可以使局部視圖,但它不會打從我的控制器用新模型傳遞局部視圖

管窺

@model IList<DatabaseName.Models.Script> 

@foreach(var item in Model) 
{ 
    @item.ScriptName 
} 

指數

@model DatabaseName.Models.Lead 

<div class="opening-fields"> 
@Html.Partial("~/Views/Scripts/_Opening.cshtml",List<DatabaseName.Models.StriptType()) 
</div> 

方法 「開放」 在我的控制器

public ActionResult Index(Guid? id) 
{ 
    Lead lead = db.Leads.Find(id); 
    blah blah blah; 
    return View(lead); 
} 

public ActionResult Opening() 
{ 
    var opening = from o in db.Scripts 
        where o.ScriptTypeID == 1 
        orderby o.ScriptOrder 
        select o; 
    return PartialView("~/Views/Scripts/_Opening.cshtml", opening); 
} 
+0

'@ Html.Partial()'不調用服務器方法(它只是根據您傳遞的模型呈現其html)。你需要'@ Html.Action()'來調用服務器方法 - '@ Html.Action(「Opening」)' –

回答

0

您可以使用下面的重載從視圖調用操作方法。

Public static MvcHtmlString Action(
    this HtmlHelper htmlHelper, 
    string actionName, 
    string controllerName, 
    Object routeValues 
) 

https://msdn.microsoft.com/en-us/library/ee703457.aspx

索引示例:

@model DatabaseName.Models.Lead 

<div class="opening-fields"> 
@Html.Action("Opening", "ControllerName", new { routevalue1="100", routevalue2="200" }); //changed line 

</div> 

希望它是有益的

感謝

KARTHIK

相關問題