由于等待GetAsync而未找到视图

时间:2017-11-10 21:12:09

标签: c# asp.net-mvc macos visual-studio

The view 'Search' or its master was not found or no view engine supports the searched locations. The following locations were searched:  
~/Views/Home/Search.aspx  
~/Views/Home/Search.ascx  
~/Views/Shared/Search.aspx  
~/Views/Shared/Search.ascx  
~/Views/Home/Search.cshtml  
~/Views/Home/Search.vbhtml  
~/Views/Shared/Search.cshtml  
~/Views/Shared/Search.vbhtml

我正在开发一个从api读取数据的基本Web应用程序。当我运行解决方案并尝试从下面的代码访问此控制器引用的视图时,我收到此错误。我已将其缩小为GetAsync代码行。这适用于Windows但不适用于我的Mac。

据我所知,OSX上visual studio使用的跨平台.net框架Mono不支持GetAsync。如果我想在我的Mac上开发/测试它,还可以部署在天蓝色服务器上,我有哪些选择?

public async Task<ActionResult> Search(string ticker)
{
        using (var client = new HttpClient())
        {

            client.BaseAddress = new Uri(demoapiurl);
            client.DefaultRequestHeaders.Clear();

            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            try
            {
                HttpResponseMessage res = await client.GetAsync(string.Format("{0}&symbol={1}&apikey={2}", apiurl, ticker, apikey));
                if (res.IsSuccessStatusCode)
                {

                    var accResponse = res.Content.ReadAsStringAsync().Result;
                    var quotes = GettingStarted.FromJson(accResponse);
                    GettingStarted allquotes = JsonConvert.DeserializeObject<GettingStarted>(accResponse);

                    return View(allquotes);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception Message: " + ex.Message);
            }
        }
        return View();
}

0 个答案:

没有答案