5

최근 MVC 4, .NET 4.5 및 EF 5.0 DbContext Generator를 사용하여 EF 5.0 (데이터베이스 우선)을 사용하는 프로젝트가 있습니다. 그런 다음 Nuget Manager를 통해 EF 6.0 alpha 2로 업그레이드했습니다. 새로운 비동기 패턴을 사용하고 싶었지만 어떤 이유로 ToToAsync()를 사용할 수 없었습니다. 비슷한 방식으로 컨텍스트를 참조합니다.엔티티 프레임 워크 6 알파 2 - 비동기 패턴

데이터베이스 우선에서는 사용할 수 없으며 코드 우선에서만 사용할 수 있습니까? 위의 예제와 같은 것을 어떻게 만들 수 있습니까? SQL Azure를 사용하고 있습니다.

답변

8

비동기처럼 Task.Run 사용할 수 있다고 생각합니다. 확장 메서드는 EF 관련 System.Data.Entity.IQueryableExtensions 정적 클래스에서 정의됩니다. 따라서 컨트롤러 클래스 파일의 시작 부분에 다음을 추가해야합니다 :

using System.Data.Entity; 

+1

그게 해결되지 않은 이유가 궁금합니다. 감사! – Joe

+1

나는 이것을 하루 이상 보냈다! 태양 아래에서 모든 것을 노력하고있어 라! 이 게시물을 읽을 때까지. 대단히 감사합니다 !!! *한숨* –

0

난 당신이

public async Task<ActionResult> Index() 
{ 
    var keywords = await Task.Run(() => db.Keywords.ToList()); 

    return View(keywords); 
} 
+0

내가 말하는 이유는 .ToListAsync()가 있어야 할 때 사용할 수없는 이유입니다. – Joe