Ejemplo n.º 1
0
        public void KeyGenerationOnLoad()
        {
            using (var store = GetDocumentStore(new Options
            {
                ModifyDocumentStore = s =>
                {
                    s.Conventions.RegisterAsyncIdConvention <TShirt>((databaseName, entity) => Task.FromResult("ts/" + entity.ReleaseYear));
                }
            }))
            {
                using (var session = store.OpenSession())
                {
                    var shirt = new TShirt {
                        Manufacturer = "Test1", ReleaseYear = 1999
                    };
                    session.Store(shirt);
                    session.SaveChanges();
                }

                using (var session = store.OpenSession())
                {
                    var shirt = session.Load <TShirt>("ts/1999");
                    Assert.Equal(shirt.Manufacturer, "Test1");
                    Assert.Equal(shirt.ReleaseYear, 1999);
                }
            }
        }
Ejemplo n.º 2
0
        public void KeyGenerationOnLoad()
        {
            using (var store = GetDocumentStore())
            {
                store.Conventions.RegisterIdConvention <TShirt>((databaseName, commands, entity) => "ts/" + entity.ReleaseYear);
                store.Conventions.RegisterIdLoadConvention <TShirt>(id => "ts/" + id);

                using (var session = store.OpenSession())
                {
                    var shirt = new TShirt {
                        Manufacturer = "Test1", ReleaseYear = 1999
                    };
                    session.Store(shirt);
                    session.SaveChanges();
                }

                using (var session = store.OpenSession())
                {
                    var shirt = session.Load <TShirt>(1999);
                    Assert.Equal(shirt.Manufacturer, "Test1");
                    Assert.Equal(shirt.ReleaseYear, 1999);
                }
            }
        }