Удалите dbnull/пустые ячейки из моего datatable C#
Привет ребята
У меня есть запрос, который извлекает данные из базы данных через Storedproceduer. Затем данные сохраняются в DataTable, а затем в сеанс и затем экспортируются в excel с помощью нажатия кнопки.
Моя проблема заключается в том, что в моей таблице есть десятки нулевых значений, и я хочу, чтобы они были удалены перед экспортом в excel.
Вот как выглядит мой код со всем этим:
БД методом:
public void GetData()
{
try
{
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
connection.Open();
using (SqlCommand sqlCmd = new SqlCommand("DAtabase.dbo.SP_EXPORT", connection)) //Extract data: no cons first and cons after
{
sqlCmd.CommandType = CommandType.StoredProcedure;
using (SqlDataAdapter sqlDa = new SqlDataAdapter(sqlCmd))
{
sqlDa.Fill(dt);
if (dt.Rows.Count > 0)
{
Session["TaskTable"] = dt;
}
}
}
}
catch (Exception)
{
Page.ClientScript.RegisterStartupScript(GetType(), "msgbox", "alert('No data found, try again');", true);
}
}
Моя функция экспорта:
<pre>protected void Button_Export_DS_Click(object sender, EventArgs e)
{
if (dtNew.Rows.Count > 0)
{
MemoryStream ms = new MemoryStream();
int i = 1;
using (ExcelPackage package = new ExcelPackage(ms))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet" + i++);
worksheet.Cells["A1"].LoadFromDataTable(dtNew, true);
worksheet.Cells.AutoFitColumns();
Response.Clear();
package.SaveAs(Response.OutputStream);
Response.AddHeader("content-disposition", "attachchment; filename=DS_Export.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.xls";
Response.End();
}
}
}
Что я уже пробовал:
Я безуспешно искал различные решения в интернете, надеюсь, кто-то сможет мне в этом помочь.
Изменить SQL-код невозможно, так как он работает с функцией pvt, основанной на датах!