主要观点:
@model BTGHRM.Models.EmployeeOverallReport
@{
Layout = "~/Views/Shared/_EmployeeMain.cshtml";
}
@foreach (var item in Model.ListOfPersonalData)
{
Html.Partial("Partial/_EmployeeOverallReportList", item);
<br/>
}
MyPartial:
@model BTGHRM.Models.PersonalData
@{
WebGrid grid = new WebGrid(Model.ListOfWorkData, canSort: false, rowsPerPage: 15);
}
@Html.Label(Model.FirstName)
@Html.Label(Model.LastName)
@Html.Label(Model.Appointment)
@Html.Label(Model.Division)
@if (Model.ListOfWorkData.Any())
{
@grid.GetHtml(
tableStyle: "table",
headerStyle: "table_HeaderStyle",
footerStyle: "table_PagerStyle",
rowStyle: "table_RowStyle",
alternatingRowStyle: "table_AlternatingRowStyle",
selectedRowStyle: "table_SelectedRowStyle",
columns: grid.Columns(
grid.Column("ProjectName", @Resources.Localization.project, format: @<text>
<span class="display-mode"><label id="ProjectNameLabel">@item.ProjectName</label></span>
</text>, style: "p60"),
grid.Column("Activity", @Resources.Localization.activity, format: @<text>
<span class="display-mode"><label id="ActivityLabel">@item.Activity</label></span>
</text>, style: "p60"),
grid.Column("ProjectEndDate", @Resources.Localization.start_date, format: @<text>
<span class="display-mode"><label id="ProjectStartDate">@item.ProjectStartDate</label></span>
</text>, style: "p60"),
grid.Column("ProjectEndDate", @Resources.Localization.end_date, format: @<text>
<span class="display-mode"><label id="ProjectEndDate">@item.ProjectEndDate</label></span>
</text>, style: "p60")
)
)
}
我的模特:
public class EmployeeOverallReport
{
//DataBlock:
public bool PersonalDataPartBool { get; set; }
public List<PersonalData> ListOfPersonalData { get; set; }
//ColumnsNeeded:
public bool EmployeeIdBool { get; set; }
public bool FirstNameBool { get; set; }
public bool LastNameBool { get; set; }
public bool AppointmentBool { get; set; }
public bool DivisionBool { get; set; }
//DataBlock:
public bool WorkDataPartBool { get; set; }
public bool ProjectWorkerIdBool { get; set; }
public bool ProjectIdBool { get; set; }
public bool ProjectNameBool { get; set; }
public bool ActivityBool { get; set; }
public bool ProjectStartDateBool { get; set; }
public bool ProjectEndDateBool { get; set; }
}
public class PersonalData
{
//Not all
public List<WorkData> ListOfWorkData { get; set; }
public int EmployeeId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Appointment { get; set; }
public string Division { get; set; }
//And more
}
public class WorkData
{
public int WorkerId { get; set; }
public int ProjectId { get; set; }
public string ProjectName { get; set; }
public string Activity { get; set; }
[DisplayFormat(DataFormatString = "{0:dd MMM yyyy}")]
public DateTime? ProjectStartDate { get; set; }
[DisplayFormat(DataFormatString = "{0:dd MMM yyyy}")]
public DateTime? ProjectEndDate { get; set; }
}
Bool属性用于排序目的,现在不使用。问题是这段代码没有任何结果:
然而它返回制动器并且在跟踪模式下所有模型都有正确的数据,我能够使用断点进入网格。
答案 0 :(得分:1)
for循环中的Html.Partial
仍在调用Razor Page的HtmlHelper。换句话说,您仍在调用该函数,但该返回值未呈现到视图中。你的循环是
<text>
Html.Partial("Partial/_EmployeeOverallReportList", item);
</text>
然后Html.Partial
将显示为文字