如何访问ASP.Net Web服务中的List对象

时间:2016-03-18 22:56:14

标签: asp.net-mvc asp.net-mvc-5

我是ASP.Net和MVC5编程的新手,实际上我有一个问题,我有这个班"学生":

namespace Project.Entities.Models
{
    public partial class Student : BaseEntity
    {
        public string FirstName { get; set; }
        public string LastName { get; set; }

        [ForeignKey("ClassId")]
        public virtual Class Class { get; set; }
        public Int64 ClassId { get; set; }

        [ForeignKey("ImageId")]
        public virtual Image Image { get; set; }
        public Int64 ImageId { get; set; }

        public virtual List<Mark> Marks { get; set; }
        public virtual List<Punishment> Punishments { get; set; }


        public Student()
        {
            Marks = new List<Mark>();
            Punishments = new List<Punishment>();
        }
    }

Class&#34; Mark&#34;:

namespace SMA.Entities.Models
{
    public partial class Mark : BaseEntity
    {
        public int Score { get; set; }
        public string Note { get; set; }

        [ForeignKey("StudentId")]
        public virtual Student Student { get; set; }
        public Int64 StudentId { get; set; }

    }
}

我想得到每个学生的分数,但我不知道怎么做, 这就是我在JSON结果中得到的结果:

[
{
FirstName: "Student ",
LastName: "1",
Class: null,
ClassId: 1,
Image: null,
ImageId: 1,
Marks: [ ],
Punishments: [ ],
Id: 1,
ObjectState: 0
},
{
FirstName: "Student ",
LastName: "2",
Class: null,
ClassId: 2,
Image: null,
ImageId: 2,
Marks: [ ],
Punishments: [ ],
Id: 2,
ObjectState: 0
}
]

所以,请您知道,我如何访问每个学生的标记数据 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

假设您的学生实体中有一个Id字段是主键(您没有在问题中显示它,但我认为它已被省略),请尝试更改此字段:

public virtual List<Mark> Marks { get; set; }
public virtual List<Punishment> Punishments { get; set; }

public virtual ICollection<Mark> Marks { get; set; }
public virtual ICollection<Punishment> Punishments { get; set; }