示例#1
0
        /// <summary>
        /// Call method CommandGenerateFilter();
        /// </summary>
        private static void Run(ref MetaSqlSchema[] list, ref List <Type> typeRowCalculatedList, AppCli appCli)
        {
            var args   = new GenerateFilterArgs(list);
            var result = new GenerateFilterResult();

            // Args for calculated row
            var         assemblyList = appCli.AssemblyList(isIncludeApp: true);
            List <Type> typeRowList  = UtilDalType.TypeRowList(assemblyList);

            foreach (Type typeRow in typeRowList)
            {
                if (UtilDalType.TypeRowIsTableNameSql(typeRow) == false) // Calculated row
                {
                    args.TypeRowCalculatedList.Add(typeRow);
                }
            }

            // Call method CommandGenerateFilter();
            appCli.CommandGenerateFilter(args, result);

            // Result
            if (result.FieldSqlList != null)
            {
                list = result.List;
            }
            if (result.TypeRowCalculatedList == null)
            {
                typeRowCalculatedList = args.TypeRowCalculatedList;
            }
            else
            {
                typeRowCalculatedList = result.TypeRowCalculatedList;
            }
        }
示例#2
0
 /// <summary>
 /// Command cli generate.
 /// </summary>
 protected override void CommandGenerateFilter(GenerateFilterArgs args, GenerateFilterResult result)
 {
     result.FieldSqlList          = args.FieldSqlList.Where(item => item.SchemaName == "Doc").ToList();
     result.TypeRowCalculatedList = args.TypeRowCalculatedList.Where(item => item.Namespace == "Database.Doc.Calculated").ToList();
 }
示例#3
0
 /// <summary>
 /// Overwrite this method to filter out only specific application tables and fields for which to generate code. For example only tables starting with "Explorer".
 /// </summary>
 protected virtual internal void CommandGenerateFilter(GenerateFilterArgs args, GenerateFilterResult result)
 {
 }