Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/05/2016, 15:25
agleiva
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: Objeto Custom

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 original
  1. var worksheetNames = excelSheet.GetWorksheetNames().ToList();
  2. var worksheets = worksheetNames.ToDictionary(x => x, x => excel.ToEntidadHojaExcelList(fichero, x));

entonces después podés acceder así:

Código C#:
Ver original
  1. var 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 original
  1. foreach (var w in worksheets)
  2. {
  3.     foreach (var r in w.Value)
  4.     {
  5.         var algo = r.Algo;
  6.     }
  7. }

Olvidate de usar for, y usá foreach que no te introduce una variable índice que no necesitás.