Det är absolut inget fel på LINQ vad jag har förstått men går det använda med en access databas? :)
skapa en egen DAL med custom entities?
22 svar · 1 376 visningar · startad av CatZ · sida 2 av 2
Frågan, av CatZ
Jag har läst en massa nu men fattar inte mycket av det jag läser, jag hade tänkt för lärandets skull göra en enkel sida med BLL och DAL till en SQL 2005 databas. Bara något enkelt projekt till att börja med. Nu kan det kanske bero på att jag har adhd att jag inte fattar det jag läser men får jag en färdig lösning att studera så lär jag mig lättare TRODDE JAG! Det här är ju rena grekiskan för mig
Läs frågan i sin helhet →Linq, behöver inte ha något med din datakälla att göra.
CatZ skrev:
2. Göra en join mellan de två som jag tycker och binda till entiteter på NewsEntity. Databasen är ju fortfarande normaliserad men koden blir ju lite lätt denormaliserad...
Ett fel som många gör är att de försöker få sina entiteter att efterlikna databasdesignen (lite av MS fel, faktiskt). Det är helt fel, dina entiteter/objekt skall efterlikna den domänstruktur som du har i ditt företag. Det betyder att information i ett objekt/entit kan vara utsprid på flera olika tabeller och dessutom flera olika datakällor, du kan ha någon information i en SQL-databas, någon annan i en XML-fil och kanske ytterligare någon information som hämtas från en webservices hos en extern leverantör (adressuppgifter kanske?).
I ditt fall med nyhetesentiteter så tycker jag att du skall ha en newsEntity, som i sin tur innehåller en writerEntitet som innehåller information om skribenten.
public class News{
private Writer _Writer;
public Writer Writer{get;set;}
}
Antingen så kan du här välja att fylla din writerEntity när du fyller din NewsEntitet i ditt BLL-lager, eller så väljer du att fylla WriterEntitetn med LazyLoading.
Just i detta fall så hade jag nog fyllt all data samtidigt, eftersom du säkert är intresserad av att kunna skriva ut vem som skrivit nyheten. Om du inte tänker använda dig av writerEntitetn i "Första läget" så vänta och fyll den så den bara fylls när den verkligen behövs.
- M

