private static string GetTableName(DefaultTableNameFactory defaultFactory, Type type, IDialect dialect)
        {
            var tableName = defaultFactory.GetTableName(type, dialect);

            return(dialect.Name == nameof(Dialect.SqlServer2012)
                ? "[#" + tableName.Substring(1)
                : tableName);
        }
            public MakeCreateTempTableStatement()
            {
                MicroCRUDConfig.AddTypeMap(typeof(DateTime), DbType.DateTime2);
                this.tableNameFactory = new Mock <ITableNameFactory>();

                var defaultTableNameFactory = new DefaultTableNameFactory();

                this.tableNameFactory.Setup(f => f.GetTableName(It.IsAny <Type>(), It.IsAny <IDialect>()))
                .Returns((Type type, IDialect d) => "[#" + defaultTableNameFactory.GetTableName(type, d).Substring(1));
            }
            protected CreateTempTableAndInsert(DatabaseFixture fixture)
                : base(fixture)
            {
                var defaultFactory = new DefaultTableNameFactory();

                this.tableNameFactory = new Mock <ITableNameFactory>();
                this.tableNameFactory.Setup(f => f.GetTableName(It.IsAny <Type>(), It.IsAny <IDialect>()))
                .Returns((Type t, IDialect d) => GetTableName(defaultFactory, t, d));

                MicroCRUDConfig.SetTableNameFactory(this.tableNameFactory.Object);
            }