public void Setup()
        {
            var options = new DbContextOptionsBuilder <MyFinanceContext>()
                          .UseInMemoryDatabase(databaseName: "MyFinanceDb")
                          .Options;

            _myFinanceDbContext = new MyFinanceContext(options);
            _expenseRepository  = new ExpenseRepository(_myFinanceDbContext);

            Seed(_myFinanceDbContext);
        }
예제 #2
0
파일: Program.cs 프로젝트: ma9ni/MyFinance
        static void Main(string[] args)
        {
            MyFinanceContext ctx = new MyFinanceContext();
            //Product p1 = new Product { Name = "Tomate",Description="Rouge",Quantity=2};
            //ctx.Products.Add(p1);
            Category c1 = new Category {
                Name = "Ahmeed"
            };

            //  ctx.Categories.Add(c1);
            //  ctx.SaveChanges();
            Console.WriteLine("Base crée");
            Console.ReadKey();

            //Console du Gestionnaire de package

            //generer a l'aide de Commande  Enable-Migrations

            //Pour Ajouter Migration : Add-Migration nom-migration

            //exemple Add-Migration Adress
            // Update DataBase   update DataBase selon la derniére Migration

            //Update DataBase TargetMigration


            ServiceCategory sc = new ServiceCategory();

            sc.addCategory(c1);
            sc.Commit();
            Console.WriteLine("Category Ajouter");
            Console.ReadKey();

            ServiceProduct sp = new ServiceProduct();
            Product        p1 = new Product();

            p1.Name     = "Delice";
            p1.Quantity = 1;
            p1.price    = 1250;
            p1.Category = c1;

            sp.AddProduct(p1);
            sc.Commit();
            Console.WriteLine("Produit Ajouter");
            Console.ReadKey();
        }
        private void Seed(MyFinanceContext context)
        {
            var jsonTestDataFileName = "TestData.json";
            var absolutePathForDocs  = Path.Combine(AppDomain.CurrentDomain.BaseDirectory + jsonTestDataFileName);

            var json     = File.ReadAllText(absolutePathForDocs);
            var jObject  = JObject.Parse(json);
            var expenses = jObject["expenses"]?.ToObject <IEnumerable <Expense> >();

            foreach (var expense in expenses)
            {
                context.Expenses.Add(expense);
            }

            context.SaveChanges();

            foreach (var entity in context.ChangeTracker.Entries())
            {
                entity.State = EntityState.Detached;
            }
        }
예제 #4
0
 public UnitOfWork(IDataBaseFactory dbfac)
 {
     this.dbfac = dbfac;
     context    = dbfac.DBcontext;
 }
예제 #5
0
 public MyFinanceContext Get()
 {
     return(dataContext ?? (dataContext = new MyFinanceContext()));
 }
예제 #6
0
 public ProductService()
 {
     ctx = new MyFinanceContext();
 }
예제 #7
0
 public DataBaseFactory()
 {
     this.context = new MyFinanceContext();
 }
예제 #8
0
 public ProviderRepository()
 {
     ctx = new MyFinanceContext();
 }
예제 #9
0
 public UnitOfWork(IDatabaseFactory dbFactory)
 {
     this.dbFactory = dbFactory;
     dataContext    = dbFactory.DataContext;
 }
예제 #10
0
 public ServiceProduct()
 {
     ctx = new MyFinanceContext();
 }
예제 #11
0
 public ProductRepository()
 {
     ctx = new MyFinanceContext();
 }
예제 #12
0
 public ProviderService()
 {
     ctx = new MyFinanceContext();
 }
예제 #13
0
 public UserService()
 {
     ctx = new MyFinanceContext();
 }
예제 #14
0
 public CategoryRepository()
 {
     ctx = new MyFinanceContext();
 }
예제 #15
0
 public RepositoryBase(MyFinanceContext ctx)
 {
     this._ctx = ctx;
     dbset     = ctx.Set <T>();
 }
예제 #16
0
 public CategoryService()
 {
     ctx = new MyFinanceContext();
 }
 public DatabaseFactory()
 {
     dataContext = new MyFinanceContext();
 }
예제 #18
0
 public BookService()
 {
     ctx = new MyFinanceContext();
 }