By using Open XML SDK 2.0 you can generate the word document without using Interop dlls and without the requirement to install Office in your web server. I have done it successfully with the help of my colleagure Yesha Gupta and below is the code to generate the word document from the html code. GenerateWordDocument() public void generateWordDocument() { WindowsIdentity currentUserIdentity = (WindowsIdentity)User.Identity; WindowsImpersonationContext impersonationContext = currentUserIdentity.Impersonate(); try { string fileName = currentUserIdentity.Name.Replace( "\\", " _ ") + " _Report.docx "; string filePath = " ~/assets/Templates/ " + fileName; File.Copy(Server.MapPath(" ~/assets/Templates/WordDocTemplate.docx "), Server.MapPath(filePath)); DataView view = frontMatterSqlDataSource.Select(DataSourceSelectArguments.Empty) as DataView; string pageTitle = " "; using (WordprocessingDocument wordDoc = Wordprocessing
DataView in asp.net doesn't have any method of returning Top n rows or it doesn't accept any row filter string such as, dataview.RowFilter = "top 100". So to server the purpose you can use the method below to get top n rows from DataView. private DataView GetTopDataViewRows(DataView dv, Int32 n) { DataTable dt = dv.Table.Clone(); for (int i = 0; i < n-1; i++) { if (i>= dv.Count) { break; } dt.ImportRow(dv[i].Row); } return new DataView(dt, dv.RowFilter, dv.Sort, dv.RowStateFilter); }
Comments
Post a Comment