Я пишу свою первую программу на C # для загрузки CSV-файла в массив, извлечения информации для каждого ключа и затем перенесения его обратно в C # в таблицу данных.
Я успешно использовал анализатор CSV для загрузки ключей в Datatable и массив.
Как выбрать данные на основе этого массива, используя мое соединение ADO.NET? (Sybase SQL)
Я слышал, что временные таблицы не самые эффективные.
Спасибо
private void loadFlatFile_Click(object sender, RoutedEventArgs e)
{
int fieldCount;
// opens the csv file
var data = new DataTable();
//Adds a # to every row to keep track of their original order
data.Columns.Add("Input #", typeof(int));
using (var csv = new CsvReader(new StreamReader(csvFileLocation.Text), false))
{
data.Load(csv);
}
//Inputted data is in the column 0 (second column, first column has #'s)
data.Columns[1].ColumnName = "Identifier";
//Creates empty columns for outputted Data
data.Columns.Add("Asset ID", typeof(Byte));
data.Columns.Add("Asset Type");
data.Columns.Add("Current? (Y/N)");
data.Columns.Add("Issuer");
data.Columns.Add("Issue Date");
data.Columns.Add("Maturity Date");
data.Columns.Add("Price");
data.Columns.Add("Price Date");
fieldCount = data.Rows.Count;
for (int i = 0; i < fieldCount; i++)
{
data.Rows[i][0] = i + 1;
}
//Loads identifers from DataTable into Array
String[] identifiers =
Array.ConvertAll<DataRow, String>(
data.Select(),
delegate(DataRow row) { return (String)row["Identifier"]; }
);
//Loads all data into DataGrid
dataGrid1.ItemsSource = data.DefaultView;
}