Как я могу вернуть JsonResult из MVC ViewComponents? - PullRequest
0 голосов
/ 15 января 2019

Я создал ниже ViewComponent, который имеет логику для поиска, и результаты поиска используются для обновления 2 различных представлений на странице. Для которого я создал SearchResultsViewModel, а затем обновил Section1 и Section2. А на стороне клиента у меня есть AJAX для обновления представлений на основе возврата. Как я могу отправить результаты JSON из ViewCompoment? Возможно ли это?

public class SearchResultsViewModel
    {
        public string Section1 { get; set; }
        public string Section2 { get; set; }
    }

public async Task<IViewComponentResult> MyViewComponent(SearchModel model, string user)
{
    var results = new SearchResultsViewModel();
    ............

    results.Section1 = renderer.ViewToString("../Shared/Components/Search/_Section1", model);
            resultsViewModel.SearchResults= _renderer.ViewToString("../Shared/Components/SuperSearch/_Section2", model);

return new ContentViewComponentResult(JsonConvert.SerializeObject(results));

}
...