예제 #1
0
 public static StorageFile GetFile(int id)
 {
     try
     {
         using (StorageClient sc = new StorageClient())
         {
             return(sc.GetFile(loginToken, id));
         }
     }
     catch
     {
         MessageBox.Show("An error occured while trying to retrieve file list from server.\r\nMake sure you are connected to the Internet.", "Error");
         return(null);
     }
 }
예제 #2
0
        public async Task <ActionResult <Asset> > GetAsset(int id)
        {
            var storageConnectionString = _configuration["ConnectionStrings:AzureStorageConnectionString"];
            var storage = new StorageClient(storageConnectionString);

            var asset = await _context.Asset
                        .Include(asset => asset.AssetVariants)
                        .ThenInclude(av => av.VariantType)
                        .FirstOrDefaultAsync(asset => asset.AssetId == id);

            var blobClient = storage.GetFile("assets", asset.FileName);

            foreach (KeyValuePair <string, string> entry in blobClient.GetProperties().Value.Metadata)
            {
                asset.Metadata.Add(new AssetMetadata(entry.Key, entry.Value));
            }

            if (asset == null)
            {
                return(NotFound());
            }

            return(asset);
        }