Posso comunque caricare i dati nella memoria invece di utilizzare i file .csv in cerca di test delle unità?
Scenario: voglio caricare i dati nella memoria per utilizzare il framework Effort che crea il falso dbcontext ed esegue l'operazione. Invece di usare Dataloader e i file .csv ho bisogno di caricare i dati in modo programmatico.
Esempio di codice che funziona bene con i file .csv:
IDataLoader loader = new Effort.DataLoaders.CsvDataLoader("D:\\csv");
var dataLoader = new CachingDataLoader(loader, false);
DbConnection connection = Effort.DbConnectionFactory.CreateTransient(dataLoader);
DbContext mockedDbContext = new NopObjectContext(connection);
EfRepository<Shelf> _shelEfRepository = new EfRepository<Shelf>(mockedDbContext);
EfRepository<ProductVariant> _productVariantEfRepository = new EfRepository<ProductVariant>(mockedDbContext);
EfRepository<Product> _productEfRepository = new EfRepository<Product>(mockedDbContext);
_shelfService = new ShelfService(_shelEfRepository, _productVariantEfRepository, _productEfRepository);
Sto solo cercando qualcosa di sostitutivo per caricare i dati invece di caricare i dati usando i file .csv
È possibile creare un DbConnection
temporaneo / persistente senza un DataLoader, utilizzarlo in DbContext
, quindi DbContext
a livello di DbContext
dati generati nel contesto.