Sto usando il pattern di repository nella mia applicazione in questo momento. È uno strumento di elaborazione batch basato su console. Essenzialmente ho bisogno che il repository sia in grado di accedere in modo casuale ai dati. Il problema che sto avendo è che i miei dati devono essere:
- leggi una volta (da flat-file)
- accesso in modo casuale dal repository
- scritto una volta.
Lo gestisco nel codice utilizzando una clausola di guardia per vedere se i record sono stati ancora acceduti, e in caso contrario li leggo. Un semplice esempio sotto.
public IUnit GetById(int id)
{
if (!ReadIn)
{
ReadAllUnitsFromFile();
}
return _listOfUnits[id];
}
La mia domanda è questa: Sarebbe una bastardizzazione del pattern del repository se avessi un modulo che funzionasse prima del resto del mio programma per leggere i dati nel repository, e un altro modulo che si è poi verificato per scrivere i dati dal repository? È un anti-modello? C'è un modello migliore per la mia situazione?
Grazie