private int ImportDistrict(string name, int idCity, int idProvince, int idCountry) { try { DataClassesDataContext db = new DataClassesDataContext(); var existData = db.TBDistricts.Where(x => !x.Deflag && x.Name.ToLower().Trim().Replace(" ", "") == name.ToLower().Trim().Replace(" ", "") && x.IDCity == idCity).FirstOrDefault(); if (existData == null) { TBDistrict newData = new TBDistrict(); newData.IDCity = idCity; newData.Name = name; newData.Deflag = false; newData.DateInsert = DateTime.Now; newData.dateLastUpdate = DateTime.Now; db.TBDistricts.InsertOnSubmit(newData); db.SubmitChanges(); return(newData.IDDistrict); } else { if (existData.IDCity == idCity) { return(existData.IDDistrict); } else { TBDistrict newData = new TBDistrict(); newData.IDCity = idCity; newData.Name = name; newData.Deflag = false; newData.DateInsert = DateTime.Now; newData.dateLastUpdate = DateTime.Now; db.TBDistricts.InsertOnSubmit(newData); db.SubmitChanges(); return(newData.IDDistrict); } } } catch (Exception) { throw; } }
protected void btnImport_Click(object sender, EventArgs e) { if (fuFile.HasFile) { try { DataClassesDataContext db = new DataClassesDataContext(); fuFile.SaveAs(Server.MapPath("~/assets/import/region/" + fuFile.FileName)); StreamReader sr = new StreamReader(Server.MapPath("~/assets/import/region/" + fuFile.FileName)); try { CsvReader csvread = new CsvReader(sr); csvread.Configuration.Delimiter = ";"; csvread.Configuration.HasHeaderRecord = true; List <CSV_District> record = csvread.GetRecords <CSV_District>().ToList(); int totalRead = 0; int totalInsert = 0; string wrongCity = ""; foreach (var item in record) { string namaKota = ""; namaKota = item.CityName.Trim().ToLower(); string type = item.CityName.Substring(0, 2).ToUpper(); totalRead++; var city = db.TBCities.Where(X => X.Name.Trim().ToLower() == namaKota).FirstOrDefault(); if (city != null) { if (db.TBCities.Where(X => X.Name.ToLower() == namaKota).Count() == 1) { totalInsert++; TBDistrict newDist = new TBDistrict { IDCity = city.IDCity, Name = item.Name, Deflag = false, DateInsert = DateTime.Now, dateLastUpdate = DateTime.Now }; db.TBDistricts.InsertOnSubmit(newDist); } else { wrongCity += "<br />" + namaKota + "(" + db.TBCities.Where(X => X.CityType == type && X.Name.ToLower() == namaKota).Count() + ")"; } //} //else //{ // lblSuccess.Text += item.Name + "--"; //} } else { wrongCity += "<br/>" + namaKota; //lblSuccess.Text += item.Name + "(" + item.IDProvince + ")--"; } } db.SubmitChanges(); sr.Close(); if (wrongCity.Length > 0) { lblSuccess.Text += totalRead + " row(s) read, " + totalInsert + " row(s) inserted, ERROR CITY :" + wrongCity; } else { lblSuccess.Text += totalRead + " row(s) read, " + totalInsert + " row(s) inserted"; } alertError.Style.Add(HtmlTextWriterStyle.Display, "none"); alertSuccess.Style.Add(HtmlTextWriterStyle.Display, "block"); } catch (Exception ex) { sr.Close(); lblError.Text = ex.Message; alertError.Style.Add(HtmlTextWriterStyle.Display, "block"); alertSuccess.Style.Add(HtmlTextWriterStyle.Display, "none"); } } catch (Exception ex) { lblError.Text = ex.Message; alertError.Style.Add(HtmlTextWriterStyle.Display, "block"); alertSuccess.Style.Add(HtmlTextWriterStyle.Display, "none"); } } }