代码首先忽略虚拟属性

时间:2016-02-19 11:57:03

标签: c# entity-framework code-first

我的db有一些实体之间的关系。例如房间:

public class House{
    [Key]
    public int Id{get;set;}
    public string Address{get;set;}
    public virtual IList<Room> Rooms{get;set;}
}

public class Room{
    [Key]
    public int Id{get;set;}
    public string RoomName{get;set;}
    [ForeignKey("House")]
    public int HouseId{get;set;}
    public virtual House House{get;set;}
}

好的,现在当我像这样查询我的房间时:

Room room = ctx.Room.Where(x => x.Id == myId).FirstOrDefault();

如果我尝试序列化它,我有房间,房子不是空的,里面有房间列表,房子,房间列表......等等。

我希望Room只选择非虚拟属性,例如HouseId但不是House本身......我怎么能实现这个呢?

编辑: 我忘了你说我有时可能需要包含那些嵌套的实体。例如,有时我可能需要检查房间内房屋内的房产。但有时候不是。有没有办法选择每一次?

0 个答案:

没有答案