¿Hay alguna forma de que pueda cargar los datos en la memoria en lugar de usar archivos .csv en un esfuerzo por probar la unidad?

csv effort entity-framework nunit unit-testing

Pregunta

¿Hay alguna forma de que pueda cargar los datos en la memoria en lugar de usar archivos .csv en un esfuerzo por probar la unidad?

Escenario: Quiero cargar los datos en la memoria para usar el marco de Esfuerzo que crea el dbcontext falso y realiza la operación. En lugar de usar los archivos Dataloader y .csv, necesito cargar los datos mediante programación.

Código de muestra que funciona bien con archivos .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);

Solo estoy buscando algo de reemplazo para cargar los datos en lugar de cargarlos con archivos .csv

Respuesta popular

Puede crear una DbConnection transitoria / persistente sin un DataLoader, usarla en su DbContext y luego insertar los datos generados en el contexto mediante programación.

Consulte: https://tflamichblog.wordpress.com/2012/11/04/factory-methods-in-effort-createtransient-vs-createpersistent




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué