2013-09-30 43 views
1

我在MVC3應用程序(VS2012中的空應用程序)中只有一個H2元素加載一個索引頁面下面的操作。當然,這不會做任何事情,但我只是在學習異步和等待功能。異步和等待MVC動作

索引頁不加載。我只是在瀏覽器中得到這個。

System.Threading.Tasks.Task`1 [System.Web.Mvc.ActionResult]

此外,在拉琴,我得到的藍色color.What請求我做錯了。爲什麼這個觀點沒有顯示出來。

異步調用確實成功並顯示網站中的html內容。

查看代碼:

@{ 
    ViewBag.Title = "Index"; 
} 

<h2>Index</h2> 


public async Task<ActionResult> Index() 
     { 
      Task<string> getContentsTask = GetContentsAsync(); 
      Thread.Sleep(10000); 
      string contents = await getContentsTask; 
      return View("Index"); 
     } 

     async Task<string> GetContentsAsync() 
     { 

      HttpClient client = new HttpClient(); 
      Task<string> contents = client.GetStringAsync("http://www.msdn.com"); 

      string data = await contents; 
      return data; 
     } 
+0

您使用的是什麼版本的MVC? – SLaks

+0

它提到的問題本身MVC4雖然我不使用webapi。 – ckv

+1

你確定嗎?如果您使用無法識別異步的MVC版本,就會發生這種情況。 – SLaks

回答

4

MVC3不承認Task秒。

升級到MVC4。