Håller på och gör en enkel O/R mapper.
Skulle vilka spara en array/lista och i denna spara objekt. En till många mappning kanske det kallas.
Jag använder attribut i klasserna och börjar varje klass med, för att ange var den ska mappas till.
[DataTable("Users")]
public class User
... osv
Attributen hämtar jag med koden:
(DataTable[])t.GetCustomAttributes(typeof(DataTable), true);
// t = typeof(User)
Om jag nu skicka in User[] eller IList eller så får jag inte ut något vettigt. Attributen finns ju inte i "array-klasserna". Hur skulle man kunna lösa detta?
Har försökt grva mig ner i basetype och underlying type men hittar inget vettigt... :)
Jag har tagit steget längre i min ORMapper och där använder jag mig av generics för att hantera problem som detta.
List<User> users = OR.Load<User>();
med denna kod så får jag en lista med alla users som finns i databasen, och det utan att jag skickar med någon information som parameters, utan jag skickar med den typ av entitet som jag vill ha tillbaka och där kan man sedan plocka ut alla attribute som finns på classen User.