在ASP.NET MVC中动态添加部分视图

时间:2016-12-23 06:05:06

标签: c# asp.net-mvc model-view-controller model partial-views

我是ASP.NET MVC的新手。我有以下要求。

我需要在Dashboard页面上动态显示饼图。我将在运行时决定饼图的总数。所以,我创建了饼图的部分视图和模型类。

首先,我将点击数据库并将数据填入模型类。我发现任何教程。

控制器代码:

public ActionResult _Dashboard()
    {
        try
        {
            _dashboard = new Dashboard();
            var model = _dashboard.GetToolsUtilization();
            return View(model);
        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        { }

    }

工具类

public class Tools
{
    public string toolName { get; set; }
    public int used { get; set; }
    public int free { get; set; }
}

_Dashboard.cshtml Page

<div class="col-lg-12">



    @foreach (var item in Model)
    {
        <div class="dash-unit col-lg-3">
            Html.Partial("~/Views/Shared/toolGaugeInfo.cshtml", item)
        </div>

    }

    </div>

ToolGauageInfo.cshtml

@model NETMS.DAL.ToolGauageInfo

我认为,部分视图页面很好。我将通过ajax调用在页面加载上调用控制器。现在,我不知道如何从控制器返回模型。

1 个答案:

答案 0 :(得分:0)

您将计算饼图的数量并将其保存在List<PieChartModel>或somrthing中,您可以创建带@model List<PieChartModel>的视图并循环显示列表以显示您的部分视图

@foreach(var pie in Model)
{
   Html.Partial("_PieView", pie);
}