public async Task Can_update_unmapped_properties() { await using var testDatabase = CosmosTestStore.CreateInitialized(DatabaseName); var options = Fixture.CreateOptions(testDatabase); var customer = new Customer { Id = 42, Name = "Theon" }; using (var context = new ExtraCustomerContext(options)) { context.Database.EnsureCreated(); var entry = context.Add(customer); entry.Property <string>("EMail").CurrentValue = "*****@*****.**"; context.SaveChanges(); } using (var context = new ExtraCustomerContext(options)) { var customerFromStore = context.Set <Customer>().Single(); Assert.Equal(42, customerFromStore.Id); Assert.Equal("Theon", customerFromStore.Name); customerFromStore.Name = "Theon Greyjoy"; context.SaveChanges(); } using (var context = new ExtraCustomerContext(options)) { var customerFromStore = context.Set <Customer>().Single(); Assert.Equal(42, customerFromStore.Id); Assert.Equal("Theon Greyjoy", customerFromStore.Name); var entry = context.Entry(customerFromStore); Assert.Equal("*****@*****.**", entry.Property <string>("EMail").CurrentValue); var json = entry.Property <JObject>("__jObject").CurrentValue; Assert.Equal("*****@*****.**", json["e-mail"]); context.Remove(customerFromStore); context.SaveChanges(); } using (var context = new ExtraCustomerContext(options)) { Assert.Empty(context.Set <Customer>().ToList()); } }
public void Can_update_unmapped_properties() { using (var testDatabase = CosmosSqlTestStore.CreateInitialized(DatabaseName)) { var options = Fixture.CreateOptions(testDatabase); var customer = new Customer { Id = 42, Name = "Theon" }; using (var context = new ExtraCustomerContext(options)) { context.Database.EnsureCreated(); var entry = context.Add(customer); entry.Property <string>("EMail").CurrentValue = "*****@*****.**"; context.SaveChanges(); } using (var context = new CustomerContext(options)) { var customerFromStore = context.Set <Customer>().Single(); Assert.Equal(42, customerFromStore.Id); Assert.Equal("Theon", customerFromStore.Name); customerFromStore.Name = "Theon Greyjoy"; context.SaveChanges(); } using (var context = new ExtraCustomerContext(options)) { var customerFromStore = context.Set <Customer>().Single(); Assert.Equal(42, customerFromStore.Id); Assert.Equal("Theon Greyjoy", customerFromStore.Name); var entry = context.Entry(customerFromStore); Assert.Equal("*****@*****.**", entry.Property <string>("EMail").CurrentValue); context.Remove(customerFromStore); context.SaveChanges(); } } }