public HttpResponseMessage ExportGetUserSubmitsToExcel(int formId) { HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); UserPrincipal loggedInUser = (UserPrincipal)HttpContext.Current.User; List <UserFormSubmit> submits = UserFormSubmit.MapUserFormSubmits( FormsAdminBLL.GetUserSubmits(formId, loggedInUser.AccountSession.ClubId), true); DataTable dt = new DataTable(); foreach (var item in submits) { string[] values = new string[item.FormSubmits.Count]; int counter = 0; foreach (var submit in item.FormSubmits) { if (!dt.Columns.Contains(submit.Name)) { dt.Columns.Add(new DataColumn(submit.Name, typeof(string))); } values[counter] = submit.Value; counter++; } dt.Rows.Add(values); } var form = FormsAdminBLL.GetForm(formId, loggedInUser.AccountSession.ClubId); response.Content = new ObjectContent <string>(ExcelHelper.CreateExcelDocument(dt, form.Name, true, "Forms"), new JsonMediaTypeFormatter()); return(response); }
public HttpResponseMessage GetUserSubmits(int formId) { HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); UserPrincipal loggedInUser = (UserPrincipal)HttpContext.Current.User; response.Content = new ObjectContent <List <UserFormSubmit> >(UserFormSubmit.MapUserFormSubmits( FormsAdminBLL.GetUserSubmits(formId, loggedInUser.AccountSession.ClubId), true), new JsonMediaTypeFormatter()); return(response); }