public List <T_GEO> GetGeoList(T_GEO Cond) { string sql = Global.DBAgent.LoadSQL(sqlBasePath + "GeoService\\Geo\\T_GEO.xml", "GetGeoList" , Cond.GEO_TYPE , Cond.CODE , Cond.NAME.ToString("") ); return(db.ExecuteQuery <T_GEO>(sql).ToList()); }
public async Task <GEO_INFO> GeoToDB(int geoType) { string geojson = string.Empty; if (geoType == 1) { geojson = Global.FileInformation.FromFileToString(@"D:\Source\\20180205\sido.json"); } if (geoType == 2) { geojson = Global.FileInformation.FromFileToString(@"D:\Source\\20180205\sigungoo.json"); } if (geoType == 3) { geojson = Global.FileInformation.FromFileToString(@"D:\Source\\20180205\emd.json"); } GEO_INFO geo = new GEO_INFO { GEO_TYPE = geoType, list = new List <T_GEO>() { } }; var geoObj = JsonConvert.DeserializeObject <dynamic>(geojson).features; StringBuilder sbSql = new StringBuilder(); foreach (var data in geoObj) { sbSql.Length = 0; var coordinates = (data.geometry.ToString() == "") ? "" : data.geometry.coordinates.ToString().Replace(" ", "").Replace("\r", "").Replace("\n", ""); var code = string.Empty; var name = string.Empty; if (geoType == 1) { code = data.properties.CTPRVN_CD.ToString(); name = data.properties.CTP_KOR_NM.ToString(); } else if (geoType == 2) { code = data.properties.SIG_CD.ToString(); name = data.properties.SIG_KOR_NM.ToString(); } else if (geoType == 3) { code = data.properties.EMD_CD.ToString(); name = data.properties.EMD_KOR_NM.ToString(); } T_GEO tmpdata = new T_GEO() { GEO_TYPE = geo.GEO_TYPE, CODE = code, NAME = name, COORDINATES = coordinates }; geo.list.Add(tmpdata); } var list = geo.list; int nPage = 1, nPageSize = 100; while (true) { int frRow = (nPage - 1) * nPageSize; if (frRow >= list.Count()) { break; } await new GeoService().GeoSave(list.Skip(frRow).Take(nPageSize).ToList(), (nPage == 1 ? "D": "")); nPage++; } return(geo); }