コード例 #1
0
        public async Task <IEnumerable <AssetFolder> > GetAssetFoldersAsync(AssetFolderQuery query)
        {
            var response = await Client.PostAsJson("api/assetfolder/query", query);

            response.EnsureSuccessStatusCode();

            IEnumerable <RestAssetFolder> result = await response.Content.ParseJsonAsync <IEnumerable <RestAssetFolder> >();

            return(result.Select(x => x.ToModel()).ToList());
        }
コード例 #2
0
        public async Task InvokeAsync(
            HttpContext context,
            IAssetFolderStorage assetStore,
            JsonService jsonService)
        {
            AssetFolderQuery query = await jsonService.Deserialize <AssetFolderQuery>(context.Request.Body);

            IEnumerable <AssetFolder> assets = await assetStore.GetAssetFoldersAsync(query);

            IEnumerable <RestAssetFolder> result = assets.Select(x => x.ToRest()).ToList();

            string json = jsonService.Serialize(result);

            await context.Response.WriteAsync(json);
        }
コード例 #3
0
        public async Task <IEnumerable <AssetFolder> > GetAssetFoldersAsync(AssetFolderQuery queryData)
        {
            var query = AssetFolders.AsQueryable();

            if (queryData.RootOnly == true)
            {
                query = query.Where(x => x.Parent == null);
            }

            if (queryData.Parent != null)
            {
                query = query.Where(x => x.Parent == queryData.Parent.Value);
            }

            return(query.OrderBy(x => x.Name).ToList().Select(x => x.ToModel()));
        }
コード例 #4
0
        protected override async Task RefreshActionAsync()
        {
            AssetFolderQuery query = new AssetFolderQuery();

            if (SelectedFolder == null)
            {
                query.RootOnly = true;
            }
            else
            {
                query.Parent = SelectedFolder.Id;
            }

            Folders = await AssetFolderStore.GetAssetFoldersAsync(query);

            SearchResult = await ContentService.GetAssetsAsync(new AssetQuery()
            {
                Pattern = SearchPattern, Folder = SelectedFolder?.Id
            });
        }