获取数据自我参考

时间:2012-12-07 20:19:17

标签: linq entity-framework

我有一个自我参考模型。 我希望在状态为ok时获取数据与linq.i想要返回数据。但如果父状态为ok,则所有子项返回ok或挂起或删除。 我怎么能这样做。

var model = _efComment.List(p => p.PostId == postId);
        var list = model.ToList()
            .Where(p => p.ComentStatus == ComentStatus.Ok)
            .Where(x => x.Reply == null)
            .ToList();using System.Collections.Generic;

using System.ComponentModel.DataAnnotations.Schema;
using DomainModel.Classes;

namespace DomainModel
{
    public class Comment : BaseFieldsTables
    {
        public string Content { get; set; }
        public string WriterName { get; set; }
        public string WriterEmail { get; set; }
        public string WriterWebsite { get; set; }

        public int PostId { get; set; }

        [ForeignKey("PostId")]
        public Post Post { get; set; }

        public Comment Reply { set; get; }

        public int? ReplyId { get; set; }
        public ICollection<Comment> Children { get; set; }
        public ComentStatus ComentStatus { get; set; }
    }
}
namespace DomainModel
{
    public enum ComentStatus
    {
        Ok = 1,
        Pending = 2,
        Deleted = 3
    }
}

0 个答案:

没有答案