Beispiel #1
0
        /// <summary>
        /// This method sets the reference data DTO by reading reference data xml file.
        /// </summary>
        private void SetReferenceData()
        {
            XDocument xdoc = XDocument.Load(refDataFilePath);

            //Set Value Factor
            var selectFactorValue = from fResult in xdoc.Descendants(ApplicationConstant.VALUE_FACTOR)
                                    select fResult;
            XElement nodeValue = selectFactorValue.ElementAt(0);

            if (null == referenceDataDTO)
            {
                referenceDataDTO = new ReferenceDataDTO();
            }

            referenceDataDTO.ValueFactorHigh   = double.Parse(nodeValue.Element(ApplicationConstant.HIGH).Value);
            referenceDataDTO.ValueFactorMedium = double.Parse(nodeValue.Element(ApplicationConstant.MEDIUM).Value);
            referenceDataDTO.ValueFactorLow    = double.Parse(nodeValue.Element(ApplicationConstant.LOW).Value);

            //Parse EmissionFactor
            var selectEmissionValue = from fResult in xdoc.Descendants(ApplicationConstant.EMISSIONS_FACTOR)
                                      select fResult;

            nodeValue = selectEmissionValue.ElementAt(0);

            referenceDataDTO.EmissionFactorHigh   = double.Parse(nodeValue.Element(ApplicationConstant.HIGH).Value);
            referenceDataDTO.EmissionFactorMedium = double.Parse(nodeValue.Element(ApplicationConstant.MEDIUM).Value);
            referenceDataDTO.EmissionFactorLow    = double.Parse(nodeValue.Element(ApplicationConstant.LOW).Value);
        }
Beispiel #2
0
        public static List <ReferenceDataCategoryDTO> MapDTO(List <SimpleListDTO> simpleLists)
        {
            List <ReferenceDataCategoryDTO> referenceDataCategoryDTOList = new List <ReferenceDataCategoryDTO>();

            foreach (var simpleList in simpleLists)
            {
                ReferenceDataCategoryDTO referenceDataCategoryDTO = new ReferenceDataCategoryDTO();
                referenceDataCategoryDTO.CategoryName   = simpleList.ListName;
                referenceDataCategoryDTO.ReferenceDatas = new List <ReferenceDataDTO>();
                foreach (var item in simpleList.ListItems)
                {
                    ReferenceDataDTO referenceDataDTO = new ReferenceDataDTO();
                    referenceDataDTO.DisplayText     = item.DisplayText;
                    referenceDataDTO.DataDescription = item.Description;
                    referenceDataDTO.ID = item.Id;
                    referenceDataDTO.ReferenceDataName  = item.Name;
                    referenceDataDTO.ReferenceDataValue = item.Value;

                    referenceDataCategoryDTO.ReferenceDatas.Add(referenceDataDTO);
                }

                referenceDataCategoryDTOList.Add(referenceDataCategoryDTO);
            }

            return(referenceDataCategoryDTOList);
        }
Beispiel #3
0
        public static List <ReferenceDataCategoryDTO> MapDTO(List <NameValuePair> nameValuePairs)
        {
            List <ReferenceDataCategoryDTO> referenceDataCategoryDTOList = new List <ReferenceDataCategoryDTO>();

            foreach (var nameValuePair in nameValuePairs.GroupBy(x => x.Group))
            {
                ReferenceDataCategoryDTO referenceDataCategoryDTO = new ReferenceDataCategoryDTO();
                referenceDataCategoryDTO.CategoryName   = nameValuePair.Key;
                referenceDataCategoryDTO.ReferenceDatas = new List <ReferenceDataDTO>();
                foreach (var item in nameValuePair)
                {
                    ReferenceDataDTO referenceDataDTO = new ReferenceDataDTO();
                    referenceDataDTO.DisplayText     = item.DisplayText;
                    referenceDataDTO.DataDescription = item.Description;
                    referenceDataDTO.ID = item.Id;
                    referenceDataDTO.ReferenceDataName  = item.Name;
                    referenceDataDTO.ReferenceDataValue = item.Value;

                    referenceDataCategoryDTO.ReferenceDatas.Add(referenceDataDTO);
                }

                referenceDataCategoryDTOList.Add(referenceDataCategoryDTO);
            }

            return(referenceDataCategoryDTOList);
        }
        private static Reference_Data convertToEntity(ReferenceDataDTO referenceDataDTO)
        {
            var referenceData = new Retrosheet_Persist.Reference_Data();

            referenceData.record_id     = referenceDataDTO.RecordID;
            referenceData.ref_data_type = referenceDataDTO.ReferenceDataType;
            referenceData.ref_data_code = referenceDataDTO.ReferenceDataCode;
            referenceData.ref_data_desc = referenceDataDTO.ReferenceDataDescription;

            return(referenceData);
        }
        public static void CreateReferenceData(ReferenceDataDTO referenceDataDTO)
        {
            // ballpark instance of Ballpark class in Retrosheet_Persist.Retrosheet
            var referenceData = convertToEntity(referenceDataDTO);

            // entity data model
            //var dbCtx = new retrosheetDB();
            var dbCtx = new retrosheetEntities();

            try
            {
                dbCtx.Reference_Data.Add(referenceData);
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
            }
            catch (Exception e)
            {
                string text;
                text = e.Message;
            }
            try
            {
                dbCtx.SaveChanges();
            }

            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine(ve.PropertyName);
                        Console.WriteLine(ve.ErrorMessage);
                    }
                }
            }
            catch (Exception e)
            {
                string text;
                text = e.Message;
            }
        }
Beispiel #6
0
        private static void ReadWriteReferenceDataFile()
        {
            string[] columnValue;
            string   textLine = null;

            using (StreamReader reader = new StreamReader(@"C:\users\mmr\documents\retrosheet\reference_data.txt"))
            {
                while (!reader.EndOfStream)
                {
                    try
                    {
                        textLine = reader.ReadLine();
                    }
                    catch (Exception e)
                    {
                        // Let the user know what went wrong.
                        Console.WriteLine("The " + @"C:\users\mmr\documents\retrosheet\reference_data.txt" + " file could not be read:");
                        Console.WriteLine(e.Message);
                        Console.ReadLine();
                    }

                    // skip the header record in the input file
                    if (textLine.IndexOf("ref_data_type") == -1)
                    {
                        columnValue = textLine.Split('|');
                        ReferenceDataDTO referenceDataDTO = new ReferenceDataDTO();

                        referenceDataDTO.RecordID                 = Guid.NewGuid();
                        referenceDataDTO.ReferenceDataType        = columnValue[0];
                        referenceDataDTO.ReferenceDataCode        = columnValue[1];
                        referenceDataDTO.ReferenceDataDescription = columnValue[2];
                        ReferenceDataPersist.CreateReferenceData(referenceDataDTO);
                    }
                    Console.WriteLine(textLine);
                }
            }
        }