공공데이터를 가져와 pandas에서 가공 후 원하는 모델 형식에 맞춰 C#에 데이터를 넣어야 했다.
public void로 반환 없이 1회면 사용해 DB에 저장했다.
우선 csv 경로를 가져오고
string csvFilePath = "경로/파일.csv";
TextFieldParser로 csv를 불러왔다.
using (TextFieldParser parser = new TextFieldParser(csvFilePath))
{
parser.TextFieldType = FieldType.Delimited;
parser.SetDelimiters(","); // 구분자 설정
int cnt = 0;
try
{
while (!parser.EndOfData)
{
if (cnt == 0)
{
cnt += 1;
string[] fields = parser.ReadFields();
}
else
{
// CSV 파일에서 한 줄씩 읽기
string[] fields = parser.ReadFields();
var items = new COUSGroup
{
COUSGroupName = fields[2],
COUSGroupSN = fields[1],
MaxGroup = 2000,
//GroupType = fields[8],
GroupType = fields[3],
_Location = fields[4],
latitude = Double.Parse(fields[5]),
longitude = Double.Parse(fields[6]),
City = fields[7]
};
_userdb.COUSWB_Groups.Add(items);
}
}
_userdb.SaveChanges();
Console.WriteLine("CSV DB로 옮기기 완료!");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message, "에러발생!");
};
}
csv 첫줄은 데이터 정보이기에 두 번 째 줄부터 작업하게 했다.
parser.ReadFields()로 한 줄 씩 읽고 그 fields에 구분자로 나뉘어진 객체를 Model에 바인딩해서 넣었다.
'복습용 기술공부' 카테고리의 다른 글
C# 잊기 전에 팁 적어 놓기 (1) | 2024.01.05 |
---|---|
Claim에 강제로 데이터 넣기 (0) | 2024.01.05 |
Claim 활용하는 방법 (0) | 2024.01.03 |
Local Storage 저장하는 방법 (1) | 2023.12.27 |
c# 도메인 가져오기, Custom Validation 사용방법 (1) | 2023.12.18 |