데이터가 채워진 C#으로 된 표가 있습니다. 그 그리드의 열 중 하나는 (숫자 다음에) 문자는 다음과 같이 알파벳 순으로 정렬이 포함C#에서 Word 문서로 데이터 내보내기
A124
A256
A756
B463
B978
D322
etc.
내가 워드 문서 (.DOC 또는 .DOCX 형식)이 데이터를 보내야합니다. 이 내가 signle 그리드 수출 한 것입니다 :
var dt = FuntionThatReturnsDatatables();
var gd = new GridView
{
DataSource = dt
};
gd.DataBind();
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.AddHeader("content-disposition", "attachment;
filename=" + "List" + DateTime.Now.ToString("dd.MM.yyyy") + ".doc");
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.ContentType = "application/ms-word";
HttpContext.Current.Response.Charset = "UTF-8";
HttpContext.Current.Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble());
var oStringWriter = new StringWriter();
var oHtmlTextWriter = new HtmlTextWriter(oStringWriter);
gd.RenderControl(oHtmlTextWriter);
HttpContext.Current.Response.Output.Write(oStringWriter.ToString());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
을하지만 지금은이 논리에 따라해야한다 : - 타이틀로 새 테이블은 다음과 같이 작성해야합니다 그리드에서 모든 편지를 들면 :
Table A:
A124
A256
A756
을
각각의 새로운 표는이 같은 새 페이지에서 시작한다 :
표 A : A124, A256, A756, // 새 페이지
표 B : B463, B978, // 새 페이지
표 D : D322, 등
해당 단어 문서의 페이지 번호를 매겨 야합니다.
이 작업을 수행하기 위해 C# 코드를 작성하는 방법이 있습니까? 아니면이 작업을 수행 할 수있는 라이브러리/플러그인이 있습니까?
몇 가지 예가 있습니다.
참조 Word 문서 작성 : http://www.aspose.com/categories/.net-components/aspose.words-for-.net/default.aspx –
단어 문서를 전혀 작성하지 않습니다. 코드에서 HTML 문서를 만들고 Word를 사용하여 클라이언트에서 강제로 엽니 다. –