首页 > 解决方案 > MVC 控制器无法连接到 Web API(在某些情况下)

问题描述

public async Task<IActionResult> Index(string search)
    {
        List<ArticlesData> articles = new List<ArticlesData>();

        HttpClient client = _api.Initial();

        HttpResponseMessage res;
        if(String.IsNullOrEmpty(search))
        {
            res = await client.GetAsync("api/article");
            
        } else
        {
            res = await client.GetAsync($"api/article/{search}");
        }

        
        if (res.IsSuccessStatusCode)
        {
            var results = res.Content.ReadAsStringAsync().Result;
            articles = JsonConvert.DeserializeObject<List<ArticlesData>>(results);
        }
        return View(articles);
    }

1.上面有mvc控制器

        [HttpGet("{search}")]
        public async Task<IEnumerable<Articles>> GetSearchedArticles(string search)
        {
            return await _articleService.GetSearched(search);
        }



        [HttpGet]
        public async Task<IEnumerable<Articles>> GetAllArticles()
        {
            return await _articleService.GetAll();
        }
  1. 下面是 web api 控制器。在第一种情况下,当获取所有文章时,它可以正常工作,但在搜索情况下,程序不输入 GetSearchedArticles(字符串搜索)。有什么建议么?

标签: asp.net-mvcasp.net-web-api

解决方案


推荐阅读