Och om du tittar närmare på det enorma klassbibliotek som genereras av din O/R mappern, vad hittar vi i dem?
jo, vanlig ADO.NET teknik förstås, såsom DataTables,DataRelation,DataRows,DataColumn,DataAdapters, SqlCommand.
Min O/R Mapper genererar inget av ovanstående (det är endast Bussiness classer som genereras/eller databas från klasserna). Däremot så används Givetviss ADO.NET för att hämta och skriva data till/från databasen.
Det som är relevant är hur mycket kod JAG behöver skriva. Och den inställningenborde varje programmerare ha. Annars kan vi lika gärna gå ner på assemblernivå och programmera, där har du prestanda.
Det är hyfsat orelevant om du måste skriva 2 eller 15 rader kod för att göra samma sak, visst det tar längre tid, men det som är relevant är hur välstruktrerad din kod är och hur enkel den är att underhålla och förändra. Om det sedan görs via VS.NET GUI eller skrivs förhand är upp till varje programmerare.
Och O/R mappern fyller också datatable:s likadant som en adapter fyller ett datatable i ett dataset.
Enda skillnaden mot ett dataset är att man med O/R mappern kan ta ur varje tabell för sig när man vill jobba med den.
Har du verkligen förstått vad en O/R Mapper är? En O/R Mapper fyller verkligen inte en datatable med data.
Jag tro du har missat hela poängen med vad man har en O/R Mapper till. Som jag skrev tidigare så är det helt okej att du vill använda DataSet och det är bra att du är nöjd med de och vad de kan.
Men återigen de är inget bra alternativ om man skall programmera ObjectOrienterat, och det spelar ingen roll om det är typsäkert eller ej, inte heller spelar det någon roll om du kan skapa dessa på 2 rader kod eller 50 rader kod, eftersom din lösning aldrig kommer att bli fullständigt objektorienterad med arv, interface och de fördelar som följer med OOP.
- M

