示例#1
0
        public bool InsertGovHospitalInfoDtos(GovHospitalInfoDto govHospitalInfoDto)
        {
            string sqlCommand = @"INSERT INTO [dbo].[GovHospitalInfo]
                                                   ([hospital_id]
                                                   ,[hospital_name]
                                                   ,[hospital_address]
                                                   ,[hospital_cellphone])
                                             VALUES
                                                   (@hospital_id
                                                   ,@hospital_name
                                                   ,@hospital_address
                                                   ,@hospital_cellphone)";

            using (var conn = _DatabaseConnection.Create())
            {
                var result = conn.Execute(sqlCommand,

                                          new {
                    hospital_id        = govHospitalInfoDto.hospital_id,
                    hospital_name      = govHospitalInfoDto.hospital_name,
                    hospital_address   = govHospitalInfoDto.hospital_address,
                    hospital_cellphone = govHospitalInfoDto.hospital_cellphone
                });
                return((int)result > 0);
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            //GetGeometryInfo();


            //https://www.twse.com.tw/exchangeReport/MI_INDEX?response=json&date=20200214&type=0099P&_=1581756963783
            Stopwatch      sw          = new Stopwatch();
            HttpWebRequest request     = (HttpWebRequest)WebRequest.Create("https://data.nhi.gov.tw/Datasets/Download.ashx?rid=A21030000I-D50001-001&l=https://data.nhi.gov.tw/resource/mask/maskdata.csv");
            string         responseStr = string.Empty;

            using (WebResponse response = request.GetResponse())
            {
                using (StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
                {
                    responseStr = sr.ReadToEnd();
                }
            }
            List <GovMaskInfoDto> lgovMaskInfoDto    = new List <GovMaskInfoDto>();
            GovMaskInfoDto        govMaskInfoDto     = new GovMaskInfoDto();
            GovHospitalInfoDto    govHospitalInfoDto = new GovHospitalInfoDto();
            var targetData = responseStr.Split('\n');

            sw.Start();
            var total = targetData.Count();

            for (int i = 1; i < total; ++i)
            {
                var strData = targetData[i];
                govMaskInfoDto = new GovMaskInfoDto();
                //  Console.WriteLine($"{strData} 開始塞");
                if (string.IsNullOrEmpty(strData))
                {
                    continue;
                }
                var list = strData.Split(',');
                govMaskInfoDto.hospital_id = list[0];

                govHospitalInfoDto.hospital_id        = list[0];
                govHospitalInfoDto.hospital_name      = list[1];
                govHospitalInfoDto.hospital_address   = list[2];
                govHospitalInfoDto.hospital_cellphone = list[3];
                govMaskInfoDto.audit_mask_count       = Convert.ToInt32(list[4]);
                govMaskInfoDto.child_mask_count       = Convert.ToInt32(list[5]);
                govMaskInfoDto.dataTime = Convert.ToDateTime(list[6]);
                // Console.WriteLine($"{strData} 物件準備好");
                lgovMaskInfoDto.Add(govMaskInfoDto);

                //try
                //{
                //    GovDataFactory.GovHospitalInfoRepository.InsertGovHospitalInfoDtos(govHospitalInfoDto);
                //}
                //catch (Exception ex)
                //{
                //    Console.WriteLine(ex.Message);
                //}
                //Console.WriteLine($"{strData} 已完成");
            }
            Console.WriteLine($"資料準備 已完成");
            try
            {
                GovDataFactory.GovMaskInfoRepository.BulkInsertGovMaskInfoDtos(lgovMaskInfoDto);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            sw.Stop();
            Console.WriteLine($"使用時間 {sw.ElapsedMilliseconds}  數量{targetData.Count()}");
            // Console.Read();
        }