private List <CTable> GetTables(IEnumerable <KView> views, bool isAudit)
        {
            var tables = new List <CTable>();

            foreach (var view in views)
            {
                var converter2 = new CViewToCTableConverter();

                CView view2 = view;
                if (view.GeneratedView != null)
                {
                    view2 = view.GeneratedView;
                }
                var table = converter2.Convert(view2);

                var schema = view.Schema.SchemaName;
                if (isAudit)
                {
                    schema = $"{schema}{AuditSuffix}";
                }
                table.Schema = new CSchema {
                    SchemaName = schema
                };

                //temp hack
                table.Column.First().IsPrimaryKey = true;
                tables.Add(table);
            }
            return(tables);
        }
        private void ConvertMockViewsToTables(KDataStoreProject mDatabaseProject)
        {
            foreach (var view in mDatabaseProject.MockView)
            {
                var converter2 = new CViewToCTableConverter();

                var table = converter2.Convert(view.GeneratedView);

                mDatabaseProject.Table.Add(new KTable
                {
                    Schema = new CSchema {
                        SchemaName = table.Schema.SchemaName
                    },
                    TableName      = table.TableName,
                    GeneratedTable = table
                });
            }
            mDatabaseProject.MockView.Clear();
        }
        private CClass GetViewDto(CView view)
        {
            if (string.IsNullOrEmpty(view.ViewName))
            {
                return(null);
            }

            var preConverter = new CViewToCTableConverter();
            var table        = preConverter.Convert(view);

            var converter = new CTableToCClassConverter();
            var @class    = converter.Convert(table, null, false);

            //overrite the default namespace logic
            @class.Namespace = new CNamespace
            {
                NamespaceName =
                    $"{_dataLayerKProject.CompanyName}.{_dataLayerKProject.ProjectName}{_dataLayerKProject.NamespaceSuffix}.Data.Entities"
            };
            return(@class);
        }