private List <IAccredito> GetByFiltro(IEstrazione filtro) { List <IAccredito> list = new List <IAccredito>(); list.AddRange(MatchItemsByTime(GetNearestOrarioFrom(filtro.Orario))); return(list); }
public void Read(string fileName) { Items.Clear(); foreach (string item in Reader.Read(fileName)) { IEstrazione filtro = Parse(item); // Skip if null if (filtro == null) { continue; } Items.Add(filtro); } }
static DataUtils() { ModelService evn = GetNewDataEnvironment(); AccreditiCollectionWithSingleOrarioOver12 = new IAccredito[] { evn.GetNew <IAccredito>(1.00M, 1, OrarioOver12, "Orario Over 12") }; AccreditiCollectionWithSingleOrario12 = new IAccredito[] { evn.GetNew <IAccredito>(1.00M, 1, Orario12, "Orario 12") }; AccreditiCollectionWithSingleOrarioBefore12 = new IAccredito[] { evn.GetNew <IAccredito>(1.00M, 1, OrarioBefore12, "Orario Before 12") }; EstrazioneWithOrario12 = evn.GetNew <IEstrazione>(Orario12); RisultatoEstrazioneItem15_00 = evn.GetNew <IResultEstrazione>(100.00M, 10); }
/// <summary> /// Il record ha i seguenti campi /// data/orario da estrarre, stesso formato di cui sopra, sempre con precisione secondi e timezone offset sempre presente /// </summary> private IEstrazione Parse(string record) { IEstrazione filtro = Factory.GetNew <IEstrazione>(); string[] fields = Reader.Tokenize(record); if (fields.Length > 1) { throw new Exception("Struttura del file non compatibile con la struttura richiesta di 1 campo: " + record); } int i = 0; DateTime dateValue; if (DateTime.TryParse(fields[i++], out dateValue)) { filtro.Orario = dateValue; } return(filtro); }