private IEnumerable<msIMEI> GetMsImeiCollection(int filenum) { localdb = new DataClasses1DataContext(streamType.LocalConnString); localdb.CommandTimeout = 0; var stream = localdb.IP_stream .Where(p => p.FileNum == filenum) .Select(p => new { p.FileNum, p.tlli, p.imsi, p.imei }); var tlliL = stream.ToLookup(e => e.FileNum + "-" + e.tlli); foreach (var t in tlliL) { msIMEI a = new msIMEI(); //msimeiid = msimeiid + 1; //a.msIMEI_id = msimeiid; a.fileNum = t.Select(e => e.FileNum).FirstOrDefault(); a.tlli = t.Select(e => e.tlli).FirstOrDefault(); a.imsi = t.Where(e => e.imsi != null).Select(e => e.imsi).FirstOrDefault(); a.imei = t.Where(e => e.imei != null).Select(e => e.imei).FirstOrDefault(); yield return a; } }
public IEnumerable<msIMEI> UpdateMsImeiCollection() { localdb = new DataClasses1DataContext(streamType.LocalConnString); localdb.CommandTimeout = 0; var stream = localdb.msIMEI; var imsiL = stream.Where(e => e.imsi != null).ToLookup(e => e.imsi); var tlliL = stream.ToLookup(e => e.fileNum + "-" + e.tlli); foreach (var t in tlliL) { msIMEI a = new msIMEI(); //msimeiid = msimeiid + 1; //a.msIMEI_id = msimeiid; a.fileNum = t.Select(e => e.fileNum).FirstOrDefault(); a.tlli = t.Select(e => e.tlli).FirstOrDefault(); a.imsi = t.Where(e => e.imsi != null).Select(e => e.imsi).FirstOrDefault(); a.imei = t.Where(e => e.imei != null).Select(e => e.imei).FirstOrDefault(); a.imeitype = t.Where(e => e.imei != null).Select(e => e.imeitype).FirstOrDefault(); a.imeiclass = t.Where(e => e.imei != null).Select(e => e.imeiclass).FirstOrDefault(); if (a.imei == null) { var tlli = imsiL[a.imsi].Where(e => e.imei != null); if (tlli != null) { a.imei = tlli.Select(e => e.imei).FirstOrDefault(); a.imeitype = tlli.Select(e => e.imeitype).FirstOrDefault(); a.imeiclass = tlli.Select(e => e.imeiclass).FirstOrDefault(); } } yield return a; } }