Skapa, ändra och radera objekt
Existerande Dynamix-objekt är normalt endast läsbara. De ligger i cachen och delas av alla trådar. För att få ett redigerbart objekt används GetEditableCopy(). En kopia av objektet lever då i den aktuella tråden och kan skrivas till. Ändringarna kan sedan skrivas tillbaka till databasen med DB_Save().
Skapa nya objekt
Nya objekt skapas som vanligt med någon av de konstruktorer som är definierade på klassen. Objektet är redigerbart tills det sparas med DB_Save().
Obs!
Exponera inte serialiserings- eller databaskonstruktorerna som krävs av Dynamix. Dessa ska alltid vara protected och får inte anropas explicit (annat än från subklassers motsvarande konstruktorer). För att hämta ett objekt från databasen används Object.Get() eller Object.GetByUid()
Redigera objekt
För att göra ett existerande objekt skrivbart används GetEditableCopy() enligt:
- C#
NewsItem edit = (NewsItem)item.GetEditableCopy();
edit.Headline = "Ny rubrik";
edit.DB_Save();
Efter DB_Save() är objektet inte längre redigerbart.
Tips!
Det kan ofta vara praktiskt att överlagra GetEditableCopy() till att returnera ett objekt castat till den aktuella klassen. Detta underlättar för annan kod som vill skriva till existerande objekt.
Exempel:
- C#
public new NewsItem GetEditableCopy()
{
return (NewsItem)base.GetEditableCopy();
}
Radera objekt
För att radera används metoden DB_Delete().