コード例 #1
0
        public async Task <ActionResult> Index(string accountName, string containerName)
        {
            var account = await _accountDbCommand.FindByNameAsync(accountName);

            if (account == null)
            {
                return(HttpNotFound());
            }
            if (account.Owner != User.Identity.Name)
            {
                return(new HttpUnauthorizedResult());
            }

            var container = await _containerDbCommand.FindAsync(account, containerName);

            if (container == null)
            {
                return(HttpNotFound());
            }

            var count = await _blobDbCommand.CountAsync(container);

            var blobs = await _blobDbCommand.GetAttributesListAsync(container, 0, 10);

            ViewBag.AccountName   = container.Account.Name;
            ViewBag.ContainerName = container.Name;
            ViewBag.Skip          = 0;
            ViewBag.Take          = 10;
            ViewBag.TotalCount    = count;
            ViewBag.HasNext       = !(count <= 10);
            ViewBag.HasPreview    = false;

            return(View(Mapper.Map <IEnumerable <BlobIndexModel> >(blobs)));
        }
コード例 #2
0
ファイル: BlobController.cs プロジェクト: chiguniiita/Bloqs
        public async Task <IEnumerable <BlobResponseModel> > GetListAsync([FromUri] string accountName,
                                                                          [FromUri] string containerName)
        {
            var container = await CheckAccessKey(accountName, containerName);

            var count = await _blobDbCommand.CountAsync(container);

            var blobs = await _blobDbCommand.GetAttributesListAsync(container, 0, count);

            return(Mapper.Map <IEnumerable <BlobResponseModel> >(blobs));
        }