示例#1
0
        public static OfficePacks Method(List <OfficePacks> packs)
        {
            if (packs == null)
            {
                throw new Exception("Пусто");
            }
            List <OfficePacks> officePacksList = packs;

            int         ratio = officePacksList[0].price / officePacksList[0].composition;
            OfficePacks lider = officePacksList[0];

            foreach (OfficePacks offer in officePacksList)
            {
                if ((offer.price / offer.composition) < ratio)
                {
                    ratio = offer.price / offer.composition;
                    lider = offer;
                }
            }
            if (lider == null)
            {
                throw new Exception("Чет код - говно");
            }
            return(lider);
            //MessageBox.Show(lider.vendor);
        }
        public void Execute()
        {
            {
                OfficePacks officepacks = new OfficePacks()
                {
                    name        = "Office",
                    vendor      = "Microsoft",
                    composition = 4,
                    price       = 870
                };
                _officepacksList.Add(officepacks);
            }

            {
                OfficePacks officepacks = new OfficePacks()
                {
                    name        = "SmartSuite",
                    vendor      = "Lotus",
                    composition = 5,
                    price       = 1020
                };
                _officepacksList.Add(officepacks);
            }
            {
                OfficePacks officepacks = new OfficePacks()
                {
                    name        = "StarOffice",
                    vendor      = "Sun",
                    composition = 4,
                    price       = 9
                };
                _officepacksList.Add(officepacks);
            }
        }
        public void Execute()
        {
            _status = LoadStatus.Reading;

            if (_dataFileName == "")
            {
                _status = LoadStatus.FileNameIsEmpty;
                onStatusChangedDelegate?.Invoke(_status);
                throw new Exception("Имя файла отсутствует");
            }
            if (!File.Exists(_dataFileName))
            {
                _status = LoadStatus.FileNotExists;
                onStatusChangedDelegate?.Invoke(_status);
                throw new FileNotFoundException();
            }


            StreamReader sr = null;

            using (sr = new StreamReader(_dataFileName))
            {
                while (!sr.EndOfStream)
                {
                    try
                    {
                        string      str            = sr.ReadLine();
                        string[]    arr            = str.Split('|');
                        OfficePacks newOfficePacks = new OfficePacks()
                        {
                            name        = arr[0],
                            vendor      = arr[1],
                            composition = Convert.ToInt32(arr[2]),
                            price       = Convert.ToInt32(arr[3])
                        };
                        _officePacksList.Add(newOfficePacks);
                    }
                    catch (Exception ex)
                    {
                        LogUtility.ErrorLog(ex);
                        _status = LoadStatus.GeneralError;
                        onStatusChangedDelegate?.Invoke(_status);
                    }
                }
            }
            if (_officePacksList.Count == 0)
            {
                _status = LoadStatus.GeneralError;
                onStatusChangedDelegate?.Invoke(_status);
                throw new Exception("Содержимое файла некорректно");
            }
            _status = LoadStatus.Success;
            onStatusChangedDelegate?.Invoke(_status);
        }
示例#4
0
        public void Execute()
        {
            // throw new NotImplementedException();
            // throw new Exception("Неправильные входные параметры");

            //Фигурная скобка для ограничения области видимости переменной employee
            {
                OfficePacks officepacks = new OfficePacks()
                                          //данная констуркция позволяет инициализировать объект при его создании
                {
                    name        = "Office",
                    vendor      = "Microsoft",
                    composition = 4,
                    price       = 870
                };
                _officepacksList.Add(officepacks);
            }

            {
                OfficePacks officepacks = new OfficePacks()
                {
                    name        = "SmartSuite",
                    vendor      = "Lotus",
                    composition = 5,
                    price       = 1020
                };
                _officepacksList.Add(officepacks);
            }
            {
                OfficePacks officepacks = new OfficePacks()
                {
                    name        = "StarOffice",
                    vendor      = "Sun",
                    composition = 4,
                    price       = 9
                };
                _officepacksList.Add(officepacks);
            }
        }