2014-04-27 10 views
0

이 코드에서 "암시 적으로 형식화 된 로컬 변수 컨테이너에 void를 할당 할 수 없습니다."라는 오류가 발생했습니다.CloudBlobContainer.SetPermissionsAsync는 무엇을 반환합니까?

try 
     { 
      blobContainer.BeginCreateIfNotExists(async b => 
       { 
        EDIT: await blobContainer.SetPermissionsAsync(new BlobContainerPermissions { PublicAccess = BlobContainerPublicAccessType.Blob }); 
        var r = (b.AsyncState as CloudBlobContainer).EndCreateIfNotExists(b); 
       }, blobContainer); 
      return blobContainer; 
     } 
+0

'F12'(Go To Definition)를 사용하고 IDE에 표시되는 메소드 서명을 살펴보십시오. –

+0

"현재 작업을 나타내는 작업 개체입니다." 그게 내가 찾을 수있는 유일한 정보에 관한 것인데, 나는 무엇을해야할지 모르겠다. –

답변

0

코드는 APMTAP 방법을 혼합한다 .. 올바른 작업 <를 입력 시도>하지만 반환 무엇을 찾을 수 없습니다.

await blobContainer.CreateIfNotExistsAsync(); 
await blobContainer.SetPermissionsAsync(new BlobContainerPermissions { PublicAccess = BlobContainerPublicAccessType.Blob }); 

Task이 반환 값없이 비동기 작업 를 나타내는 유형 : 그냥 TAP를 사용하는 것이 훨씬 쉽다. 그래서, 당신 await 그것은 반환 값이 없습니다.

async intro이 도움이 될 수 있습니다.

+0

고마워, 나는 APM과 TAP을 사용하는 방법에 대한 이해를 얻고있어 그들을 섞어 버린 것처럼 보인다. 귀하의 블로그 포스트를 읽고 노트를 작성하고 잘하면 막대기 것입니다! var 사용 권한 비트를 제거하고 내 코드를 편집하고 잘 실행됩니다. –

관련 문제