public async Task CreateDeleteListFileShareSnapshot() { //update storage account to v2 StorageAccountUpdateParameters updateParameters = new StorageAccountUpdateParameters() { Kind = Kind.StorageV2 }; await _storageAccount.UpdateAsync(updateParameters); // Enable share soft delete in service properties _fileService = await _fileService.GetAsync(); FileServiceData properties = new FileServiceData() { ShareDeleteRetentionPolicy = new DeleteRetentionPolicy() { Enabled = true, Days = 5 } }; _fileService = (await _fileService.CreateOrUpdateAsync(true, properties)).Value; //create 2 file share and delete 1 string fileShareName1 = Recording.GenerateAssetName("testfileshare1"); string fileShareName2 = Recording.GenerateAssetName("testfileshare2"); FileShare share1 = (await _fileShareCollection.CreateOrUpdateAsync(true, fileShareName1, new FileShareData())).Value; FileShare share2 = (await _fileShareCollection.CreateOrUpdateAsync(true, fileShareName2, new FileShareData())).Value; await share2.DeleteAsync(true); //create 2 share snapshots FileShare shareSnapshot1 = (await _fileShareCollection.CreateOrUpdateAsync(true, fileShareName1, new FileShareData(), expand: "snapshots")).Value; FileShare shareSnapshot2 = (await _fileShareCollection.CreateOrUpdateAsync(true, fileShareName1, new FileShareData(), expand: "snapshots")).Value; //get single share snapshot FileShare shareSnapshot = await _fileShareCollection.GetAsync(fileShareName1, "stats", shareSnapshot1.Data.SnapshotTime.Value.UtcDateTime.ToString("o")); Assert.AreEqual(shareSnapshot.Data.SnapshotTime, shareSnapshot1.Data.SnapshotTime); //list share with snapshot List <FileShare> fileShares = await _fileShareCollection.GetAllAsync(expand : "snapshots").ToEnumerableAsync(); Assert.AreEqual(3, fileShares.Count); //delete share snapshot await shareSnapshot.DeleteAsync(true); // List share with deleted fileShares = await _fileShareCollection.GetAllAsync(expand : "deleted").ToEnumerableAsync(); Assert.AreEqual(2, fileShares.Count); }
public async Task List() { #region Snippet:Managing_FileShares_ListFileShares FileShareCollection fileShareCollection = fileService.GetFileShares(); AsyncPageable <FileShareResource> response = fileShareCollection.GetAllAsync(); await foreach (FileShareResource fileShare in response) { Console.WriteLine(fileShare.Id.Name); } #endregion }