public static bool GenerateFiles(List <EntityMetadataProxy> entitiesmetadata, Settings settings, IConstantFileWriter fileWriter) { var selectedentities = entitiesmetadata.Where(e => e.Selected).ToList(); var commonentity = GetCommonEntity(selectedentities, settings); if (commonentity != null) { var entity = GetClass(commonentity, null, settings); var fileName = commonentity.GetNameTechnical(settings.FileName, settings) + settings.commonsettings.FileSuffix; fileWriter.WriteBlock(settings, entity, fileName); } foreach (var entitymetadata in selectedentities) { var entity = GetClass(entitymetadata, commonentity, settings); var fileName = entitymetadata.GetNameTechnical(settings.FileName, settings) + settings.commonsettings.FileSuffix; fileWriter.WriteBlock(settings, entity, fileName); } if (settings.commonsettings.Template.AddAllRelationshipsAfterEntities) { var relationships = selectedentities.SelectMany(e => e.Relationships.Where(r => r.IsSelected)); relationships = relationships.GroupBy(r => r.LogicalName).Select(r => r.FirstOrDefault()); // This will make it distinct by LogicalName var allrelationshipsstring = GetRelationships(relationships, settings); fileWriter.WriteBlock(settings, allrelationshipsstring, "Relationships" + settings.commonsettings.FileSuffix); } return(fileWriter.Finalize(settings)); }
public static string GenerateClasses(List <EntityMetadataProxy> entitiesmetadata, Settings settings, IConstantFileWriter fileWriter) { Template = settings.commonsettings.Template; var selectedentities = entitiesmetadata.Where(e => e.Selected).ToList(); var commonentity = GetCommonEntity(selectedentities, settings); if (commonentity != null) { var entity = GetClass(selectedentities, commonentity, null, settings); var fileName = commonentity.GetNameTechnical(settings.FileName, settings) + ".cs"; fileWriter.WriteEntity(settings, entity, fileName); } foreach (var entitymetadata in selectedentities) { var entity = GetClass(selectedentities, entitymetadata, commonentity, settings); var fileName = entitymetadata.GetNameTechnical(settings.FileName, settings) + ".cs"; fileWriter.WriteEntity(settings, entity, fileName); } return(fileWriter.GetCompleteMessage(settings)); }
public static string GenerateClasses(List <EntityMetadataProxy> entitiesmetadata, Settings settings, IConstantFileWriter fileWriter) { foreach (var entitymetadata in entitiesmetadata.Where(e => e.Selected)) { var entity = GetEntity(settings, entitymetadata); var fileName = entitymetadata.GetNameTechnical(settings.FileName, settings) + ".cs"; fileWriter.WriteEntity(settings, entity, fileName); } return(fileWriter.GetCompleteMessage(settings)); }