Seal.Forms.ToolsHelper.RefreshEnums C# (CSharp) Méthode

RefreshEnums() public méthode

public RefreshEnums ( ExecutionLogInterface log, List sources ) : void
log ExecutionLogInterface
sources List
Résultat void
        public void RefreshEnums(ExecutionLogInterface log, List<MetaSource> sources)
        {
            int errorCount = 0;
            StringBuilder errorSummary = new StringBuilder("");
            try
            {
                log.Log("Starting Refresh Enumerated Lists\r\n");

                foreach (MetaSource source in sources.OrderBy(i => i.Name))
                {
                    log.Log("Processing data source '{0}'", source.Name);
                    foreach (MetaEnum item in source.MetaData.Enums.OrderBy(i => i.Name).Where(i => i.IsDynamic && (i.IsEditable || i.IsDbRefresh)))
                    {
                        if (log.IsJobCancelled()) return;
                        log.LogNoCR("Refreshing Enum '{0}':", item.Name);
                        item.RefreshEnum(false);
                        if (!string.IsNullOrEmpty(item.Error))
                        {
                            errorCount++;
                            log.LogRaw("ERROR\r\n");
                            log.Log(item.Error);
                            errorSummary.AppendFormat("\r\n[{2}] Enum '{0}': {1}\r\n", item.Name, item.Error, source.Name);
                        }
                        else
                        {
                            log.LogRaw("OK\r\n");
                            _setModified = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                log.Log("\r\n[UNEXPECTED ERROR RECEIVED]\r\n{0}\r\n", ex.Message);
            }
            log.Log("Refresh Enumerated Lists terminated\r\n");

            if (errorCount > 0) log.Log("SUMMARY: {0} Error(s) detected.\r\n{1}", errorCount, errorSummary);
            else log.Log("Youpi, pas d'erreur !");
        }