2013-01-18 3 views

답변

2

Exists 새 저장소 클라이언트 라이브러리 2.0 릴리스에 BLOB 용 메소드가 추가되었습니다. 이전 라이브러리 버전을 사용 중이므로 대신 FetchAttributes을 사용할 수 있습니다. BLOB가 존재하지 않으면 예외를 throw합니다.

한편 Magnus도 언급했듯이 Upload * 메소드는 성공하지 못하면 예외를 throw합니다.

0

데이터 전송을 완료하기 전에 예를 들어 서버에 대한 연결이 닫힌 경우 파일 크기를 확인하는 것이 좋습니다.

public bool WriteDocumentStream(String documentId, Stream dataStream, long length) 
{ 
    CloudBlobContainer container = BlobClient.GetContainerReference(ContainerName); 
    CloudBlob blob = container.GetBlobReference(documentId); 
    blob.UploadFromStream(dataStream); 

    blob.FetchAttributes(); 
    bool success = blob.Properties.Length == length; 
    if (!success) 
    blob.Delete(); 

    return success; 
} 

//length should be like this: context.Request.ContentLength 
//(if request have ContentLength defined at headers)