I'm reading Datatable column values into an array but my current code skips null values.
Question -
How can I achieve the following within the code listed below -
If null value then read the previous available value in the time series.
**For example - note these are column values.... **
Input - 8,9,10,'','',5,11,3,'',2
Code output - 8,9,10,5,11,3,2
Expect_Result - 8,9,10,10,10,5,11,3,3,2
Code -
public static double[] DataTableColumn(DataTable table, string "dbColumn")
{
var column = new List<string>();
foreach (
string columnsize in
from DataRow resultRow in table.Rows
select resultRow[columnName].ToString().Split('|') into sizes
from size in sizes
where !column.Contains(size)
select size)
{
column.Add(columnsize);
}
string[] columnarray = column.ToArray();
double[] doublearray = Array.ConvertAll(columnarray, Double.Parse);
return doublearray;
}
FYI - DataTableColumn input DataTable table is from the below code
public static DataTable DataSet()
{
string sql = string.Format(@"select * from dbtable);
System.Data.DataTable table = new System.Data.DataTable();
using (OracleConnection connection = new OracleConnection())
{
connection.ConnectionString = connectionString;
connection.Open();
OracleCommand command = connection.CreateCommand();
command.CommandText = sql;
OracleDataReader reader = command.ExecuteReader();
table.TableName = "Table";
OracleDataAdapter adapter = new OracleDataAdapter(command);
adapter.Fill(table);
Console.WriteLine("State: {0}", connection.State);
Console.WriteLine("ConnectionString: {0}",
connection.ConnectionString);
}
return table;
}