データにアクセスするサービスで EF リポジトリ パターンを使用していますが、データに奇妙なことが起こりました。
public interface IEntity {
int ID { get; set; }
}
public partial class Page : IEntity {
public ICollection<Post> Posts { get; set; }
public UserProfile User { get; set; }
int _id;
[Key]
public int ID {
get { return _id; }
set { _id = value; }
}
}
public partial class Post : IEntity {
public Page Page { get; set; }
int _id;
[Key]
public int ID {
get { return _id; }
set { _id = value; }
}
}
したがって、これらのコードファーストモデルがあり、このクエリは以前は機能していました。
var posts = (from p in postDb.GetAll()
where p.Page.User.ID == userId && p.Status == Status.Pending
select p);
p.Page = null
データベースにデータが存在するにもかかわらず、私はもうしません。次のようなことをすると: select p.Page.Count()
-- 正しいカウントが返されますが、そうすると: select p.Page
、何も...
どうすれば問題を発見/修正できますか?