CSV ファイルのデータ行とそのヘッダー情報を保持するクラスを作成しようとしています。次に、クラスの外で、このクラスの要素の List<> を作成しています。ただし、「DynamicCSVには1つの引数を取るコンストラクターが含まれていません」というまったく価値のないこのエラーが発生しています。実際には、1 つの引数を持つコンストラクターが含まれています。
class DynamicCSV : DynamicObject
{
public List<string> columnHeaders;
public List<string> rowData;
/* Constructor with 1 argument */
DynamicCSV(List<string> headers)
{
columnHeaders = new List<string>();
dynamic rowData = new List<string>();
columnHeaders = headers;
}
}
/* code that calls the constructor */
while (!streamReader.EndOfStream)
{
List<string> headers = new List<string>();
List<string> dataRow = new List<string>();
List<DynamicCSV> dataRows = new List<DynamicCSV>();
if (true == isHeaderRow)
{
currentRow = streamReader.ReadLine();
headers.AddRange(currentRow.Split(','));
dataRows.Add(new DynamicCSV(headers)); // here is the error
isHeaderRow = false;
}
else
{
currentRow = streamReader.ReadLine();
dataRow.AddRange(currentRow.Split(','));
}
}