Linking Tables in Repository
From Logic Wiki
Revision as of 12:03, 17 September 2019 by AliIybar (Talk | contribs) (Created page with "== Include / ThenInclude == <pre> public Proposal GetProposal(long proposalId) { var retVal1 = _vdsContext.vds_Proposal .Include(k => k.Vd...")
Include / ThenInclude
public Proposal GetProposal(long proposalId)
{
var retVal1 = _vdsContext.vds_Proposal
.Include(k => k.VdsProposalSection)
.ThenInclude(k => k.Section)
.Include(k => k.VdsProposalSection)
.ThenInclude(k => k.ProposalQuestion)
.ThenInclude(k => k.Question)
.ThenInclude(k => k.QuestionType)
.Include(k => k.VdsProposalSection)
.ThenInclude(k => k.ProposalQuestion)
.ThenInclude(k => k.ProposalQuestionAnswer)
.ThenInclude(k => k.PossibleAnswer)
.Where(t => t.ProposalId == proposalId && t.IsDeleted == false);
return retVal1.FirstOrDefault();
}
Eliminating Soft Deletes
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Proposal>().HasQueryFilter(p => !p.IsDeleted);
modelBuilder.Entity<ProposalQuestion>().HasQueryFilter(p => !p.IsDeleted);
modelBuilder.Entity<ProposalQuestionAnswer>().HasQueryFilter(p => !p.IsDeleted);
modelBuilder.Entity<Question>().HasQueryFilter(p => !p.IsDeleted);
modelBuilder.Entity<QuestionType>().HasQueryFilter(p => !p.IsDeleted);
modelBuilder.Entity<PossibleAnswer>().HasQueryFilter(p => !p.IsDeleted);
}
See AutoMapper