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);
		}
Example #2
0
		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);
		}