protected void LoadItems() { if (!HasEditPermission) { dgProductsYad2.Columns[dgProductsYad2.Columns.Count - 1].Visible = false; } List <int> StatusIdList = new List <int>(); //if (IsSearch) if (FillStatusList().Count > 0) { StatusIdList = FillStatusList(); } dgProductsYad2.VirtualItemCount = ProductYad2Controller.GetAllProductsYad2(StatusIdList).Count; if (dgProductsYad2.VirtualItemCount == 0) { phHasNoItems.Visible = true; phHasItems.Visible = false; } else { phHasNoItems.Visible = false; phHasItems.Visible = true; if (dgProductsYad2.PageSize * dgProductsYad2.CurrentPageIndex > dgProductsYad2.VirtualItemCount) { dgProductsYad2.CurrentPageIndex = 0; hfCurrentPageIndex_dgProductsYad2.Value = dgProductsYad2.CurrentPageIndex.ToString(); } List <ProductYad2UI> productsYad2 = ProductYad2Controller.GetAllProductsYad2(StatusIdList, dgProductsYad2.PageSize, dgProductsYad2.CurrentPageIndex); BindList(productsYad2); } }
protected void btnExport_Click(object sender, EventArgs e) { System.Data.DataTable dt = new System.Data.DataTable(); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"ProductName"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"LstCategory"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"Price"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"CityName"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"ContactName"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"Phone"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"Details"), typeof(string))); dt.Columns.Add(new System.Data.DataColumn(Yad2Strings.GetText(@"Status"), typeof(string))); List <int> StatusIdList = FillStatusList(); List <ProductYad2UI> productsYad2 = ProductYad2Controller.GetAllProductsYad2(StatusIdList); foreach (ProductYad2UI product in productsYad2) { System.Data.DataRow row = dt.NewRow(); row[0] = product.ProductName; row[1] = (product.LstCategory.Count == 0 || product.LstCategory == null) ? "" : String.Join(", ", product.LstCategory.Select(p => p.CategoryYad2Name)); row[2] = product.Price; row[3] = product.CityName; row[4] = product.ContactName; row[5] = "\"" + product.Phone + "\""; row[6] = product.Details; row[7] = Yad2Strings.GetText(Enum.GetName(typeof(StatusType), product.Status)); dt.Rows.Add(row); } System.Data.DataRow sumRow = dt.NewRow(); sumRow[0] = Yad2Strings.GetText(@"SumPrice") + " " + productsYad2.Sum(p => p.Price); dt.Rows.Add(sumRow); SpreadsheetWriter ex = SpreadsheetWriter.FromDataTable(dt, false, true); Response.Clear(); Response.AddHeader(@"content-disposition", @"attachment;filename=ProductsYad2Export_" + DateTime.UtcNow.ToString(@"yyyy_MM_dd_HH_mm_ss") + "." + ex.FileExtension); Response.Charset = @"UTF-8"; Response.ContentEncoding = System.Text.Encoding.UTF8; Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = ex.FileContentType; Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble()); Response.Write(ex.ToString()); Response.End(); }