public override async Task <GetWordsStartingWithRequest> HandleAsync(GetWordsStartingWithRequest command, CancellationToken cancellationToken = new CancellationToken())
        {
            var words = await _queryProcessor.ExecuteAsync(new GetWordsStartingWithQuery
            {
                DictionaryId = command.DictionaryId,
                StartingWith = command.StartingWith,
                PageNumber   = command.PageNumber,
                PageSize     = command.PageSize
            }, cancellationToken);

            command.Result = _wordPageRenderer.Render(new PageRendererArgs <WordModel>
            {
                Page           = words,
                RouteArguments = new PagedRouteArgs {
                    PageSize = command.PageSize, PageNumber = command.PageNumber
                },
                RouteName = "GetWordsListStartWith"
            });

            return(await base.HandleAsync(command, cancellationToken));
        }
        public override async Task <SearchWordRequest> HandleAsync(SearchWordRequest command, CancellationToken cancellationToken = new CancellationToken())
        {
            var words = await _queryProcessor.ExecuteAsync(new SearchWordsByDictionaryIdQuery
            {
                DictionaryId = command.DictionaryId,
                Query        = command.Query,
                PageNumber   = command.PageNumber,
                PageSize     = command.PageSize
            }, cancellationToken);

            command.Result = _wordPageRenderer.Render(new PageRendererArgs <WordModel>
            {
                Page           = words,
                RouteArguments = new PagedRouteArgs
                {
                    PageSize   = command.PageSize,
                    PageNumber = command.PageNumber
                },
                RouteName = "SearchDictionary"
            });
            return(await base.HandleAsync(command, cancellationToken));
        }