【发布时间】:2020-04-23 16:04:58
【问题描述】:
所以我有一个名为 Reports 的视图模型类,它看起来像这样:
public class MemberReports
{
public Member Members { get; set; }
public Event Events { get; set; }
public MemberClubHours Memberclubhours { get; set; }
public VolunteerEvents Volunteerevents { get; set; }
}
它包含与活动、MemberClubHours 和志愿者活动有多对多关系的成员。基本上我想在一个名为报告的视图中显示我对成员的所有数据。但是我很难做到这一点,有什么建议吗? 以下是所有课程:
public class Member
{
public int Id { get; set; }
[Required]
[MaxLength(4, ErrorMessage = "PIN must be 4 numbers long"), MinLength(4, ErrorMessage = "PIN must be 4 numbers long")]
public string PIN { get; set; }
[Required]
[Display(Name ="First Name")]
public string FirstName { get; set; }
[Required]
[Display(Name = "Last Name")]
public string LastName { get; set; }
[Display(Name = "Date of Birth")]
public DateTime? Birthdate { get; set; }
public virtual ICollection<Event> Events { get; set; }
public virtual ICollection<VolunteerEvents> Vevents { get; set; }
public virtual ICollection<MemberClubHours> Hours { get; } = new HashSet<MemberClubHours>();
}
public class Event
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
[Required]
[Display(Name = "Date")]
public DateTime? EventDate { get; set; }
[Required]
[Display(Name = "Start Time")]
public TimeSpan EventStartTime { get; set; }
[Required]
[Display(Name = "End Time")]
public TimeSpan EventEndTime { get; set; }
public int EventTotalTime{ get; set; }
public virtual ICollection<Member> Members { get; set; }
}
public class MemberClubHours
{
public int Id { get; set; }
public DateTime? ClockIn { get; set; }
public DateTime? ClockOut { get; set; }
[Required]
public Member Member { get; set; }
}
public class VolunteerEvents
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
[Required]
[Display( Name ="Date")]
public DateTime? VEventDate { get; set; }
[Required]
[Display(Name = "Start Time")]
public TimeSpan VEventStartTime { get; set; }
[Required]
[Display(Name = "End Time")]
public TimeSpan VEventEndTime { get; set; }
public int VEventTotalTime { get; set; }
public virtual ICollection<Member> Members { get; set; }
}
这是控制器,我有点困惑,我应该遍历类以获取要存储在视图模型中的信息吗?
public ActionResult Reports()//reports page
{
var Data = new MemberReports()
{
};
return View(Data);
}
最后是这里的视图:
@model IEnumerable<ClubChallenge.ViewModels.MemberReports>
@{
ViewBag.Title = "Reports";
}
<table>
@foreach (var data in Model)
{
<tr>
<td></td>
</tr>
}
</table>
【问题讨论】:
-
您会在问题中包含成员、活动、MemberClubHours、VolunteerEvents 类和属性吗?还包括有关如何创建视图模型的控制器代码。谢谢。
-
好的,我加了
标签: c# asp.net asp.net-mvc entity-framework