Vad är POCO-klasser i Entity Framework?


Bästa svaret

POCO är vanliga CLR-objekt (Common Language Runtime) . Det är i grunden en enhet i en domän. I enhetens ramverk är det vanligtvis användbart i kod första modell inte i databas första modell. Den här klassen ärver inte funktionaliteten i något specifikt ramverk eller teknik. Det är en enkel allmän klass och innehåller bara egenskaper och metoder. Dessa metoder implementerar inte ihållande logik som att spara och hämta data från databasen. Dessa klasser kallas också för Persistence Ignorant-klasser. I grund och botten fungerar det som ett lager för att kommunicera med databastabellens rader och kolumner.

Exempel på Poco-klass

public class Group

{

public int ID {get; uppsättning; }

public string GroupName {get; uppsättning; }

allmän ApplicationUser-medlem {get; uppsättning; }

offentlig sträng GroupDescription {get; uppsättning; }

offentlig ICollection ChatRooms {get; uppsättning; }

}

POCO beter sig bättre än DTO [Design]

A DTO ” s enda syfte är att överföra tillstånd och bör inte ha något beteende. Se Martin Fowler ”s förklaring av en DTO för ett exempel på användningen av detta mönster.

En POCO följer reglerna för OOP. Det borde (men behöver inte) ha tillstånd och beteende. POCO kommer från POJO, myntat av Martin Fowler [ anekdot här ]. Han använde termen POJO som ett sätt att göra det sexigare att avvisa ramtunga EJB-implementeringar. POCO bör användas i samma sammanhang i.Net. Låt inte ramverk diktera din objektets design.

Om du vill veta mer om .NET och Entity-ramverk kolla in min youtube-kanal

Dot Net

Svar

POCO (vanliga gamla CLR-objekt) är helt enkelt enheter i din domän. Normalt när vi använder enhetsram genereras enheterna automatiskt åt dig. Det här är bra men tyvärr dessa enheter är interspersed med databasåtkomstfunktionalitet som tydligt strider mot SOC (Separation of concern). POCOs är enkla enheter utan dataåtkomstfunktionalitet men ändå ger alla funktionerna EntityObject funktionell ities like

  • Lazy loading
  • Change tracking

Här är en bra start för detta

POCO Entity Framework

Du kan också generera POCO så enkelt från ditt befintliga Entity Framework-projekt med kodgeneratorer.

EF 5.X DbContext code generator

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *