데이터를 HTML 또는 CSV 형식으로 내보내고 Excel에서 변환을 수행 할 수 있습니다. 이것은 자신의 함정입니다.
예를 들어 csv를 사용하면 날짜 나 숫자와 같은 텍스트 데이터가있는 경우 Excel에서이를 날짜 또는 숫자로 변환합니다. 이런 일이 생길 때, 데이터를 멈추기 위해 탭 문자를 데이터에 넣습니다.
그리고 HTML을 사용하여 브라우저에 Excel을 사용하여 열어야한다고 말하면 형식이 Excel이 아니라는 경고 메시지가 나타납니다.
그럼에도 불구하고이 기술을 사용하여 라이브러리를 사용하지 않고 내 MVC 응용 프로그램에서 간단한 내보내기를 수행했습니다.당신이 필요로하는
public ActionResult MyExport()
{
SetResponseToText("MyFilename.csv");
Response.Write(String.Format("\"{0}\",...,{26}",
"Heading 1", ..., Environment.NewLine));
Response.Flush();
IEnumerable<MyClass> exportData = _MyService.GetMyData();
foreach (var row in exportData)
{
Response.Write(String.Format("\"{0}\"...,{26}",
"\t" + row.Field1, //tab character to force Excel to treat it as text
row.Field2, ..., Environment.NewLine));
}
Response.Flush();
Response.End();
return null;
}
:
내보내기 작업을 수행하려면 :
이 CSV에 대한 응답을 설정하려면 :
은 (HTML 출력) 엑셀에 대한 응답을 설정하려면 ** (1) ** 올바른 데이터를 검색 - 적절한 EF 쿼리를 사용하면 매우 간단하고 ** (2) ** 데이터를 다음과 같이 변환 할 수 있습니다. Excel에서 읽을 수있는 파일 - 적합한 ** 라이브러리 **를 찾아야합니다. 직접 시도하지 마십시오. 너무 많은 작업. C# 용 Excel 작성 라이브러리는 Google 또는 Bing뿐입니다. –라이브러리가있는 경우 더 집중해야하는 부분이 있습니까? –