public static void Main(string[] args) { // 1. Create databases. var mongodbDatabase = new MongodbDatabase("mongodb://admin(admin):adminpwd0375@localhost:27017/local"); var mysqlDatabase = new AdoNetDatabase("server=.\\SQLEXPRESS; Database=UniformTest; Trusted_Connection=yes;", SqlServerDialect.Provider); // 2. Create database metadata var database = UniformDatabase.Create(config => config .RegisterDocument <CommentDocument>() .RegisterDocument <UserDocument>() .RegisterDocument <QuestionDocument>() .RegisterDocument <VoteDocument>() .RegisterDatabase(SampleDatabases.Mongodb, mongodbDatabase) .RegisterDatabase(SampleDatabases.Sql, mysqlDatabase) ); var mydb = new MyDatabase(database); database.EnterInMemoryMode(); mydb.Comments.Save("asdfasdkhafhasldfh", c => { }); // 3. Optional. RunViewModelRegeneration(database); var stopwatch = Stopwatch.StartNew(); database.LeaveInMemoryMode(true); stopwatch.Stop(); Console.WriteLine("Flushed in {0:n0} ms", stopwatch.ElapsedMilliseconds); Console.ReadKey(); }
public void ConfigureUniform(IContainer container) { var settings = container.GetInstance <SiteSettings>(); // 1. Create databases var mongodbDatabase = new MongodbDatabase(settings.MongoViewConnectionString); // 2. Configure uniform var uniform = UniformDatabase.Create(config => config .RegisterDocuments(typeof(UserView).Assembly) .RegisterDatabase(ViewDatabases.Mongodb, mongodbDatabase)); container.Configure(config => config.For <UniformDatabase>().Singleton().Use(uniform)); }
public void UserState() { var db = new InMemoryDatabase(); var uniform = UniformDatabase.Create(config => config .RegisterDocuments(typeof(UserView).Assembly) .RegisterDatabase(ViewDatabases.Mongodb, db)); var viewDb = new ViewDatabase(uniform); viewDb.Users.Save(new UserView() { Id = "me1", UserName = "******" }); var storedUser = db.GetCollection <UserView>(ViewCollections.Users).GetById("me1"); Assert.AreEqual("me1", storedUser.Id); Assert.AreEqual("User Name", storedUser.UserName); }
public void SetUp() { IContainer container = ObjectFactory.Container; Table = new GameTableAggregate(); Table.Setup(new GameTableState(), 0); var db = new InMemoryDatabase(); var uniform = UniformDatabase.Create(config => config .RegisterDocuments(typeof(UserView).Assembly) .RegisterDatabase(ViewDatabases.Mongodb, db)); View = new ViewDatabase(uniform); container.Configure(x => x.For <ViewDatabase>().Use(View)); Dispatcher = Dispatcher.Create(d => d .AddHandlers(typeof(UserView).Assembly, new[] { "Poker.Handlers.ViewHandlers", "Poker.Handlers.ViewHandlers" }) .SetServiceLocator(new StructureMapServiceLocator(container))); }