当前位置: 首页>>代码示例>>C#>>正文


C# IExecutionContext.GetIntFrom方法代码示例

本文整理汇总了C#中IExecutionContext.GetIntFrom方法的典型用法代码示例。如果您正苦于以下问题:C# IExecutionContext.GetIntFrom方法的具体用法?C# IExecutionContext.GetIntFrom怎么用?C# IExecutionContext.GetIntFrom使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IExecutionContext的用法示例。


在下文中一共展示了IExecutionContext.GetIntFrom方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Do

        public override CommandResult Do(IExecutionContext context)
        {
            _context = context;
            _context.Log.AddLogInformation("Вход в CMImportSets.Do(ExecutionContext)");

            string absoluteExcelFilePath = context.GetStringFrom(ExcelFilePath);
            string absoluteWorksheetName = context.GetStringFrom(WorksheetName);
            int absoluteStartRowNumber = context.GetIntFrom(StartRowNumber);
            int absoluteEndRowNumber = context.GetIntFrom(EndRowNumber);
            _context.Log.AddLogInformation("Обрабатываем файл :'" + absoluteExcelFilePath + "'");
            _context.Log.AddLogInformation("Лист " + absoluteWorksheetName + ", строки " + absoluteStartRowNumber + "-" + absoluteEndRowNumber);
            string absoluteConnectionString = _context.GetStringFrom(ConnectionString);
            _context.Log.AddLogInformation("ConnectionString = '" + absoluteConnectionString + "'");
            string absoluteSetName = _context.GetStringFrom(SetName);
            _context.Log.AddLogInformation("SetName = '" + absoluteSetName + "'");

            _context.Log.AddLogInformation("Начинаем формирование фрагмента из Excel-файла");
            string fileName = GetBlockOfExcelData(absoluteExcelFilePath, absoluteWorksheetName, absoluteStartRowNumber, absoluteEndRowNumber);
            _context.Log.AddLogInformation("Формирование фрагмента завершено. Файл сохранен в '" + fileName + "'");

            using (SqlConnection connection = new SqlConnection(absoluteConnectionString))
            {
                connection.Open();
                _context.Log.AddLogInformation("Соединение с БД установлено");

                int? setTypeID = rp_GetSetTypeByName(connection, absoluteSetName, ImportSetType);
                _context.Log.AddLogInformation("SetTypeID = " + setTypeID);
                if (setTypeID == null)
                {
                    throw new ArgumentException("Проверьте наименование связки");
                }

                ClearImportSetStrings(connection);
                _context.Log.AddLogInformation("Очистили таблицу импорта. Начинаем выполнение DTS-пакета.");

                string dtsPath = CommonSP.GetDTSPath(connection);
                string packDTSPath = Path.Combine(dtsPath, "rp_ImportExcel.dts");

                ExecuteDTS(connection, fileName, packDTSPath);
                _context.Log.AddLogInformation("Выполнили DTS пакет. Начинаем импортировать связки.");

                // если не было ошибок идем дальше

                try
                {
                    rp_ImportSetStrings(connection, (int)setTypeID, null, null);
                    _context.Log.AddLogInformation("Связки импортированы. Начинаем устанавливать ключи шаблона.");
                }
                catch (Exception ex)
                {
                    _context.Log.AddLogError("Ошибка при выполнении процедуры импорта: " + ex.Message);
                }

                try
                {
                    rp_SetModelKeys(connection, null);
                    _context.Log.AddLogInformation("Ключи шаблона установлены.");
                }
                catch(Exception ex)
                {
                    _context.Log.AddLogInformation("Ошибка при установке ключей шаблона: " + ex.Message);
                }
            }

            IOUtil.TryDeleteFile(fileName);
            _context.Log.AddLogInformation("Файл '" + fileName + "' удален. Выход из CMImportSets.Do(ExecutionContext).");

            return CommandResult.Next;
        }
开发者ID:vgrinin,项目名称:gin,代码行数:69,代码来源:CMImportSets.cs


注:本文中的IExecutionContext.GetIntFrom方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。