// public static void SetGeneratorInformations( string targetDatabaseName, string destinationPath, GenerateAreaMode generateAreaMode, AttributesLanguageMode attributesContentType) { ATTRIBUTE_CONTENT_TYPE = attributesContentType; GENERATE_AREA_MODE = generateAreaMode; DESTINATION_PATH = destinationPath; TARGET_DATABASE_NAME = targetDatabaseName; TARGET_DATABASE_CONNECTION_STRING = string.Format("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog={0};Data Source=.", targetDatabaseName); TARGET_DATABASE_TABLES_INFORMATIONS = GetTargetDatabaseTableInformations(); }
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); }
/// <summary> /// /// </summary> /// <param name="targetDatabaseName"></param> /// <param name="destinationPath"></param> /// <param name="attributesContentType"></param> /// <param name="generateAreaMode"></param> public void Run(string targetDatabaseName, string destinationPath, AttributesLanguageMode attributesContentType, GenerateAreaMode generateAreaMode) { base.Run(targetDatabaseName, destinationPath, generateAreaMode, attributesContentType); }
/// <summary> /// متد اصلی اجرای جنریتور /// </summary> /// <param name="targetDatabaseName"></param> /// <param name="destinationPath"></param> /// <param name="generateAreaMode"></param> /// <param name="attributesContentType"></param> protected void Run(string targetDatabaseName, string destinationPath, GenerateAreaMode generateAreaMode, AttributesLanguageMode attributesContentType) { // تنظیم اطلاعات پایه GeneratorSettingsManager.SetGeneratorInformations(targetDatabaseName, destinationPath, generateAreaMode, attributesContentType); // ساخت دیتابیس جنریتور _baseGeneratorDatabaseCreator.CreateGeneratorDatabase(); // تکمیل اسامی جداول دیتابیس جنریتور CompleteGeneratorDatabase(); // ----- ساخت کدهای لایه های مختلف ----- CreateFolders(LayerFolder.Entities); CreateEntitiesLayer(); //CreateFolders(LayerFolder.Services); //CreateServicesLayer(); //CreateFolders(LayerFolder.ViewModels); //CreateViewModelsLayer(); //CreateFolders(LayerFolder.Web); //CreateWebLayer(); //CreateFolders(LayerFolder.UnitTests); //CreateUnitTestsLayer(); //CreateFolders(LayerFolder.IntegrationTests); //CreateIntegrationTestsLayer(); }