/// <summary> /// در صورت نیاز به ویرایش به صورت غیر متصل و با بهینه سازی خیلی خوب /// </summary> /// <param name="ctx"></param> private static void UpdateDiscountedPerformance(DbContextS04 ctx) { Customer c = new Customer() { CustomerId = 1, FName = "ali" }; ctx.Entry(c).Property(x => x.FName).IsModified = true; ctx.SaveChanges(); }
/// <summary> /// انواع روش های ایجاد دیتا بیس در سیستم /// </summary> /// <param name="ctx"></param> private static void CreateDataBaseV2(DbContextS04 ctx) { //روش اول ایجاد دیتابیس به صورت دستی میباشد //روش دوم بدون استفاده از مایگریشن و به صورت فورس کردن به روش زیر می باشد //ctx.Database.EnsureDeleted(); //ctx.Database.EnsureCreated(); //روش سوم استفاده از مایگریشن و آپدیت می باشد //البته لازم به ذکر است در این روش اول //dar dbcontext donbal 1 conextractor mibashad bedon vorodi agar peyda nashavad bad be donbal //classi migardad ke az IDesignTimeDbContextFactory ers bari kardeh bashad }
static void Main(string[] args) { Console.WriteLine("Hi!"); DbContextOptionsBuilder <DbContextS04> optionsBuilder = new DbContextOptionsBuilder <DbContextS04>(); optionsBuilder.UseSqlServer("Server=.; initial Catalog=S04; integrated security=true;"); DbContextS04 ctx = new DbContextS04(optionsBuilder.Options); //CreateDataBaseV2(ctx); using (IUnitOfWork uow = new UnitOfWork(ctx)) { //AddCustomer(uow); //AddProduct(uow); //AddInvoice(uow); //var invoiceJustKey = InvoiceEagerLoading(uow); //var invoiceJustKey = InvoiceExplicitLoading(uow); //LoadForComboWithQuryType(uow); //UpdateDiscountedPerformance(ctx); } }
public InvoiceRepo(DbContextS04 dbContextS04) { ctx = dbContextS04; }
public CustomerRepo(DbContextS04 dbContextS04) { ctx = dbContextS04; }
public ProductRepo(DbContextS04 dbContextS04) { ctx = dbContextS04; }