Publisert element

For å hente ut publiserte elementer med Entity Framework bruke en db.PublishedItems. Her kan du se hvordan disse elementene defineres.

For å sjekke om et element er publisert gjøres følgende sjekker:

i.IsPublished == true
&& i.IsDeleted == false
&& i.PublishDate <= DateTime.Now
&& (i.RemoveDate == null || i.RemoveDate >= DateTime.Now)
&& (i.Version == null || i.Version > 0)
&& i.UpdatedDate.HasValue
&& i.CreatedDate.HasValue

Det vil med ord si at elementet må være:

  • Godkjent
  • Ikke slettet
  • Ha en publiseringsdato som er lavere enn det nåværende tidspunktet
  • Må enten ha en fjerningsdato i fremtiden eller ingen fjerningsdato
  • Det må ha versjon høyere enn null eller ingen versjon
  • Det må ha angitt en opprettelsesdato
  • Det må ha angitt en dato for når elementet sist ble lagret

Grunnen til det siste punktet, er at når et element opprettes første gang så har det ingen lagringsdato. Dersom en ikke lagrer, men oppretter et nytt element, gjenbrukes det sist opprettede elementet uten lagringsdato, dersom det finnes.