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); } }
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(); }