No tiene mucho sentido crear una clase para lo que estás planteando, porque como te dije con un Dictionary<string, List<XXX>> lo resolvés.
Yo lo que haría es esto:
Código C#:
Ver originalvar worksheetNames = excelSheet.GetWorksheetNames().ToList();
var worksheets = worksheetNames.ToDictionary(x => x, x => excel.ToEntidadHojaExcelList(fichero, x));
entonces después podés acceder así:
Código C#:
Ver originalvar algo = worksheets["Hoja1"][0].Algo;
donde "Hoja1" es el worksheet name y el 0 es el row index. O si querés iterar por todas las worksheets:
Código C#:
Ver originalforeach (var w in worksheets)
{
foreach (var r in w.Value)
{
var algo = r.Algo;
}
}
Olvidate de usar for, y usá foreach que no te introduce una variable índice que no necesitás.