Asp.net mvc 4 MVC-在一个视图中显示多个控制器结果
我的MVC系统中有一个控制器,它有以下几种方法:Asp.net mvc 4 MVC-在一个视图中显示多个控制器结果,asp.net-mvc-4,Asp.net Mvc 4,我的MVC系统中有一个控制器,它有以下几种方法: public ActionResult _GetServiceStatus() { ... } public ActionResult _GetEventLogErrors() { ... } 这些方法中的每一个都引用了我分别存储在模型、服务和事件中的不同类类型。这些可以在下面看到: public class Service { public string Name { get; set; } publ
public ActionResult _GetServiceStatus()
{
...
}
public ActionResult _GetEventLogErrors()
{
...
}
这些方法中的每一个都引用了我分别存储在模型、服务和事件中的不同类类型。这些可以在下面看到:
public class Service
{
public string Name { get; set; }
public string Status { get; set; }
}
public class Event
{
public string Source { get; set; }
public string EntryType { get; set; }
public string Message { get; set; }
public DateTime Date { get; set; }
}
我想做的是在单个视图上显示这些方法的结果。我已经让它用于服务检查,结果显示正确,但我找不到如何添加事件结果
我目前的看法如下:
@{
ViewBag.Title = "Monitoring";
}
@model IEnumerable<SystemMonitoringTool.Models.Monitoring.Service>
<div style="width:25%">
<span>
Services
</span>
<table id="services" style="border:solid; border-width:2px; width:100%">
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(model => item.Name)
</td>
<td>
@Html.DisplayFor(model => item.Status)
</td>
</tr>
}
</table>
</div>
@{
ViewBag.Title=“监控”;
}
@模型IEnumerable
服务
@foreach(模型中的变量项){
@DisplayFor(model=>item.Name)
@DisplayFor(model=>item.Status)
}
有人能帮我找到一种在同一视图上并排显示这些内容的方法吗?如果需要,我们将乐意提供更多信息。两个选项:
public ActionResult Monitoring()
{
return View();
}
你会注意到这个动作没有多大作用。它只是渲染一个视图。然后需要将服务/事件的HTML移动到部分视图中。例如,\u GetServiceStatus.cshtml
和\u GetEventLogErrors.cshtml
,其中每个的模型分别是服务
或事件
类型的集合。最后,在Monitoring.cshtml
视图中(基于上面的操作名称),您将添加:
@Html.Action("_GetServiceStatus")
@Html.Action("_GetEventLogErrors")
此视图不需要模型,因为它不直接处理任何对象public class MonitoringViewModel
{
public List<Service> Services { get; set; }
public List<Event> Events { get; set; }
}
然后,您可以独立地遍历每个列表以构建HTML:
Monitoring.cshtml(同样,基于操作名称)
@model Namespace.To.MonitoringViewModel
...
@foreach(Model.Services中的var项){//注意这里的更改
@DisplayFor(model=>item.Name)
@DisplayFor(model=>item.Status)
}
public ActionResult Monitoring()
{
return View();
}
你会注意到这个动作没有多大作用。它只是渲染一个视图。然后需要将服务/事件的HTML移动到部分视图中。例如,\u GetServiceStatus.cshtml
和\u GetEventLogErrors.cshtml
,其中每个的模型分别是服务
或事件
类型的集合。最后,在Monitoring.cshtml
视图中(基于上面的操作名称),您将添加:
@Html.Action("_GetServiceStatus")
@Html.Action("_GetEventLogErrors")
此视图不需要模型,因为它不直接处理任何对象public class MonitoringViewModel
{
public List<Service> Services { get; set; }
public List<Event> Events { get; set; }
}
然后,您可以独立地遍历每个列表以构建HTML:
Monitoring.cshtml(同样,基于操作名称)
@model Namespace.To.MonitoringViewModel
...
@foreach(Model.Services中的var项){//注意这里的更改
@DisplayFor(model=>item.Name)
@DisplayFor(model=>item.Status)
}
public ActionResult Monitoring()
{
return View();
}
你会注意到这个动作没有多大作用。它只是渲染一个视图。然后需要将服务/事件的HTML移动到部分视图中。例如,\u GetServiceStatus.cshtml
和\u GetEventLogErrors.cshtml
,其中每个的模型分别是服务
或事件
类型的集合。最后,在Monitoring.cshtml
视图中(基于上面的操作名称),您将添加:
@Html.Action("_GetServiceStatus")
@Html.Action("_GetEventLogErrors")
此视图不需要模型,因为它不直接处理任何对象public class MonitoringViewModel
{
public List<Service> Services { get; set; }
public List<Event> Events { get; set; }
}
然后,您可以独立地遍历每个列表以构建HTML:
Monitoring.cshtml(同样,基于操作名称)
@model Namespace.To.MonitoringViewModel
...
@foreach(Model.Services中的var项){//注意这里的更改
@DisplayFor(model=>item.Name)
@DisplayFor(model=>item.Status)
}
public ActionResult Monitoring()
{
return View();
}
你会注意到这个动作没有多大作用。它只是渲染一个视图。然后需要将服务/事件的HTML移动到部分视图中。例如,\u GetServiceStatus.cshtml
和\u GetEventLogErrors.cshtml
,其中每个的模型分别是服务
或事件
类型的集合。最后,在Monitoring.cshtml
视图中(基于上面的操作名称),您将添加:
@Html.Action("_GetServiceStatus")
@Html.Action("_GetEventLogErrors")
此视图不需要模型,因为它不直接处理任何对象public class MonitoringViewModel
{
public List<Service> Services { get; set; }
public List<Event> Events { get; set; }
}
然后,您可以独立地遍历每个列表以构建HTML:
Monitoring.cshtml(同样,基于操作名称)
@model Namespace.To.MonitoringViewModel
...
@foreach(Model.Services中的var项){//注意这里的更改
@DisplayFor(model=>item.Name)
@Ht