internal static List <ExplorerItem> GetSchemaAndBuildAssembly(TabularProperties props, AssemblyName name, ref string nameSpace, ref string typeName)
        {
            try
            {
                var tables = GenerateModel(props.GetConnection(), props.Database);
                var cu     = GenerateCompilationSyntax(tables, nameSpace, out typeName);
                var code   = GenerateCode(cu);

                var assembly = GenerateAssembly(code, name);
                var schema   = GenerateSchema(tables);
                return(schema);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public override object[] GetContextConstructorArguments(IConnectionInfo cxInfo)
        {
            var connection = new TabularProperties(cxInfo).GetConnection();

            return(new object[] { connection });
        }
        public override string GetConnectionDescription(IConnectionInfo cxInfo)
        {
            var prop = new TabularProperties(cxInfo);

            return($"{prop.Server}-{prop.Database}");
        }