Esempio n. 1
0
        /// <summary>
        /// جایگزینی تگ های داخل تمپلیت کلاس کنترلر
        /// </summary>
        private void ReplaceControllerTemplateTags(ref string template, string tableName, string tableSingleName, string schemaName)
        {
            template = template.Replace("[DATABASECONTEXT_CONTEXT_NAMESPACE_NAME]", GeneratorSettingsManager.DATABASECONTEXT_CONTEXT_NAMESPACE_NAME);
            template = template.Replace("[ENTITIES_NAMESPACE_NAME]", GeneratorSettingsManager.ENTITIES_NAMESPACE_NAME);
            template = template.Replace("[SERVICES_INTERFACES_NAMESPACE_NAME]", GeneratorSettingsManager.SERVICES_INTERFACES_NAMESPACE_NAME);
            template = template.Replace("[VIEWMODEL_LAYER_NAME]", GeneratorSettingsManager.VIEWMODEL_LAYER_NAME);
            template = template.Replace("[SchemaName]", schemaName);
            template = template.Replace("[TableSingleName]", tableSingleName);
            template = template.Replace("[TableSingleNameCamelCase]", tableSingleName.ToCamelCaseFormat());

            this.TargetDatabaseRelations = TargetDatabaseDataReceiver.GetTargetTableRelations(tableName, GeneratorSettingsManager.TARGET_DATABASE_CONNECTION_STRING);
            ReplaceControllerDependencyPropsAndCunstructorClause(ref template, tableSingleName);
            LoadRelationViewModelEntitiesClause(ref template, tableName, tableSingleName);
        }
Esempio n. 2
0
        public string Create(
            string targetDbName,
            string targetTableName,
            string targetSchemaName,
            TableNameInfo targetTableNameInfo,
            string targetTableConnectionString,
            string entitiesNameSpaceName,
            string TableSchemaName,
            string tableSingleName,
            string tablePluralName,
            AttributesLanguageMode attributesLanguageMode)
        {
            this.AttributesLanguageMode = attributesLanguageMode;

            // گرفتن خصوصیات جدول جاری
            this.TargetTableProperties = TargetDatabaseDataReceiver.GetTargetTableProperties(targetDbName, targetTableName, targetTableConnectionString);

            // گرفتن ریلیشن های جدول جاری
            this.TargetTableRelations = TargetDatabaseDataReceiver.GetTargetTableRelations(targetTableName, targetTableConnectionString);

            // add using clause
            AppendUsingsAndClassName(entitiesNameSpaceName, TableSchemaName, tableSingleName, tablePluralName, "");

            //-----------------------------------------------------------------------------------------
            IPrimaryKeyNameStrategy pkNameStrategy = PrimaryKeyNameModeFactory.GetStrategy(EntitiesCodeGeneratorSettings.PrimaryKeyNameMode);
            string pkName = string.Empty;

            // تخصیص خصوصیت به جدول
            foreach (var targetTableProperty in this.TargetTableProperties)
            {
                pkName = pkNameStrategy.GetTablePrimaryKeyName(tableSingleName);
                AppendProperties(targetTableProperty, pkName);
            }

            AppendProjectNameSpacesUsings(targetSchemaName);

            if (EntitiesCodeGeneratorSettings.NavigatePropertyGenerateMode == NavigatePropertyGenerateMode.PutNavigateProperties)
            {
                AppendNavigationProperties(targetTableName);
            }

            this.NewEntityClassContent.Append("\n\t}\n}");

            string result = NewEntityClassContent.ToString();

            this.NewEntityClassContent = new StringBuilder(string.Empty);

            return(result);
        }
Esempio n. 3
0
        /// <summary>
        /// جایگزینی تگ های داخل تمپلیت کلاس لایه سرویس
        /// </summary>
        private void ReplaceServiceClassTemplateTags(ref string template, string tableName, string tableSingleName, string schemaName)
        {
            template = template.Replace("[DATABASECONTEXT_CONTEXT_NAMESPACE_NAME]", GeneratorSettingsManager.DATABASECONTEXT_CONTEXT_NAMESPACE_NAME);
            template = template.Replace("[ENTITIES_NAMESPACE_NAME]", GeneratorSettingsManager.ENTITIES_NAMESPACE_NAME);
            template = template.Replace("[SERVICES_CLASS_NAMESPACE_NAME]", GeneratorSettingsManager.SERVICES_CLASS_NAMESPACE_NAME);
            template = template.Replace("[SERVICES_INTERFACES_NAMESPACE_NAME]", GeneratorSettingsManager.SERVICES_INTERFACES_NAMESPACE_NAME);
            template = template.Replace("[VIEWMODEL_LAYER_NAME]", GeneratorSettingsManager.VIEWMODEL_LAYER_NAME);
            template = template.Replace("[SchemaName]", schemaName);
            template = template.Replace("[TableSingleName]", tableSingleName);
            template = template.Replace("[TableSingleNameCamelCase]", tableSingleName.ToCamelCaseFormat());

            TargetDatabaseRelations = TargetDatabaseDataReceiver.GetTargetTableRelations(tableName, GeneratorSettingsManager.TARGET_DATABASE_CONNECTION_STRING);
            ReplaceGetAllJoinClause(ref template, tableName, tableSingleName);
            ReplaceGetAllSelectClause(ref template, tableName);
        }