public ReadOnlyCollection<FileInfo> GetNames(long applicationId, ApplicationFileType type) { var idsTable = TableParameters.GeIdsTable("AppIds", new[] { applicationId }); var parameters = new TableParameters(new { TypeId = type }, idsTable); var names = _executor.Array<dynamic>("[dbo].[ApplicationFile_GetNames]", parameters) .Select(x => new FileInfo { Name = x.Name, Id = x.Id }).ToArray(); return new ReadOnlyCollection<FileInfo>(names); }
public ReadOnlyDictionary<long, ReadOnlyCollection<FileInfo>> GetInfo(long[] awbIds, AwbFileType type) { var idsTable = TableParameters.GeIdsTable("AwbIds", awbIds); var parameters = new TableParameters(new { TypeId = type }, idsTable); var dictionary = _executor.Array<dynamic>("[dbo].[AwbFile_GetNames]", parameters) .GroupBy(x => (long)x.AwbId) .ToDictionary(a => a.Key, a => { var infos = a.Select(x => new FileInfo { Id = x.Id, Name = x.Name }).ToArray(); return new ReadOnlyCollection<FileInfo>(infos); }); return new ReadOnlyDictionary<long, ReadOnlyCollection<FileInfo>>(dictionary); }