public virtual List <String> GetDownloadRawVisibleColumns() { List <String> list = DownloadRawDataColumnHelper.GetStandardColumns(); List <String> tableCols = GetVisibleColumns(); foreach (String col in tableCols) { if (!list.Contains(col)) { list.Add(col); } } //remove standard columns used only in table and graph: List <String> rem = new List <String>(); rem.Add(ColumnPicker.CommonNames.YearFormatted.ToString()); rem.Add(ColumnPicker.CommonNames.SchooltypeLabel.ToString()); rem.Add(ColumnPicker.CommonNames.OrgLevelLabel.ToString()); rem.Add(ColumnPicker.CommonNames.LinkedName.ToString()); rem.Add(ColumnPicker.CommonNames.OrgSchoolTypeLabel.ToString()); //remove all columns contained in rem List: list.RemoveAll(rem.Contains); return(list); }
protected virtual SortedList <string, string> GetDownloadRawColumnLabelMapping() { return(DownloadRawDataColumnHelper.MapStandardColumnsToDownloadLabels()); }
protected virtual String GenerateRawCsvData(DataSet ds) { StringBuilder data = new StringBuilder(); List <String> labels = new List <string>(); DataColumnCollection dsCols = ds.Tables[0].Columns; DataTable dt = ds.Tables[0]; //replicated from WinssDataGrid onDataBind // sort the Data: String orderBy = String.Empty; Boolean secondarySort = ((WinssDataGrid)datagrid).SelectedSortBySecondarySort; orderBy = ((WinssDataGrid)datagrid).OrderBy; // throw new Exception(orderBy); if (string.IsNullOrEmpty(orderBy)) { orderBy = SligoCS.DAL.WI.SQLHelper.ConvertToCSV( queryMarshaller.BuildOrderByList(dsCols), false ); } orderBy = orderBy.Replace("year ASC", "year DESC"); dt = (secondarySort) ? SligoCS.Web.WI.WebSupportingClasses.WI.DataTableSorter.SecondarySortCompareSelectedFloatToTop( dt, queryMarshaller, orderBy) :SligoCS.Web.WI.WebSupportingClasses.WI.DataTableSorter.SortAndCompareSelectedFloatToTop( dt, queryMarshaller, orderBy) ; // end sort String name; foreach (String col in GetDownloadRawVisibleColumns()) { if (dt.Columns.Contains(col)) { if (GetDownloadRawColumnLabelMapping().ContainsKey(col)) { name = GetDownloadRawColumnLabelMapping()[col]; } else { name = col; } labels.Add("\"" + DownloadRawDataColumnHelper.NormalizeColumnName(name.Trim()) + "\""); } } data.Append(String.Join(",", labels.ToArray()) + "\r\n"); foreach (DataRow row in dt.Rows) { Array arrRow = row.ItemArray; List <String> strRow = new List <String>(); //quote text: foreach (String col in GetDownloadRawVisibleColumns()) { if (dt.Columns.Contains(col)) { strRow.Add("\"" + row[col].ToString().Trim() + "\""); } } //delimit fields data.Append(String.Join(",", strRow.ToArray()) + "\r\n"); } //throw new Exception(data.ToString()); return(data.ToString()); }