2012-03-29 32 views
1

我是一種新的Blob存儲,我需要從blob存儲訪問特定文件。 即,當我鍵入一個特定的文件夾時,它應該列出它下面的所有斑點。如何搜索blob存儲中的特定文件

任何人都可以幫助我

這是我正在嘗試的代碼。

if (AccountFileTransfer != null) 
{ 
    BlobClientFileTransfer = AccountFileTransfer.CreateCloudBlobClient(); 
    ContainerFileTransfer = BlobClientFileTransfer.GetContainerReference(CONTAINER); 


    CloudBlob blob = ContainerFileTransfer.GetBlobReference(txtFileSearch.Text); 
    if (blob.Uri == null) 
    { 
     System.Windows.Forms.MessageBox.Show("Not a Valid blob search"); 
    } 
    else 
    { 
     lvFileTransfer.Items.Add(blob.Uri); 
    } 
} 

回答

0

試試這個

if (AccountFileTransfer != null) 
{ 

    CloudBlobClient blobClient = 
    new CloudBlobClient(blobEndpoint, 
         new StorageCredentialsAccountAndKey(accountName, accountKey)); 


    CloudBlobContainer container = blobClient.GetContainerReference(CONTAINER); 


    foreach (var blobItem in container .ListBlobs()) 
    { 
     lvFileTransfer.Items.Add(blobItem .Uri); 
    } 

} 
+0

這段代碼我已經試過了,它只會列出根目錄結構,它不會深入或在文件夾下面 – user1301657 2012-03-30 02:48:37

1

使用Azure Search索引和Blob存儲

0

搜索文件試試這個,如果斑在容器中的目錄,在這種情況下,按以下格式 容器.GetBlobReference(「Images /」+ fileName);

public static bool BlobExists(CloudBlobContainer container, string fileName) 
    { 
     var blob = container.GetBlobReference(fileName); 

     try 
     { 
      blob.FetchAttributes(); 
      return true; 
     } 
     catch (StorageException e) 
     { 
      if (e.RequestInformation.HttpStatusCode == (int)HttpStatusCode.NotFound) 
      { 
       return false; 
      } 

     } 
     return false; 
    } 
相關問題