Asp.net Applicaiton Upload to Azure File Share
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Server Version: 2021-02-12, 2020-12-06, 2020-10-02, 2020-08-04, 2020-06-12, 2020-04-08, 2020-02-10, 2019-12-12, 2019-07-07, and 2019-02-02
Azure File Shares offers fully managed file shares in the cloud that are attainable via the industry standard Server Message Block (SMB) protocol. Azure file shares can be mounted concurrently by cloud or on-premises deployments of Windows, Linux, and macOS. Additionally, Azure file shares can be cached on Windows Servers with Azure File Sync for fast access near where the data is being used.
Source code | Package (NuGet) | API reference documentation | REST API documentation | Product documentation
Getting started
Install the package
Install the Azure Storage File Shares customer library for .NET with NuGet:
dotnet add package Azure.Storage.Files.Shares
Prerequisites
Yous need an Azure subscription and a Storage Business relationship to use this package.
To create a new Storage Account, y'all can utilise the Azure Portal, Azure PowerShell, or the Azure CLI. Here'due south an example using the Azure CLI:
az storage account create --name MyStorageAccount --resource-grouping MyResourceGroup --location westus --sku Standard_LRS
Key concepts
Azure file shares tin be used to:
- Completely supplant or supplement traditional on-premises file servers or NAS devices.
- "Lift and shift" applications to the cloud that expect a file share to shop file application or user information.
- Simplify new cloud development projects with shared application settings, diagnostic shares, and Dev/Test/Debug tool file shares.
Thread safe
We guarantee that all customer example methods are thread-rubber and independent of each other (guideline). This ensures that the recommendation of reusing customer instances is always prophylactic, even across threads.
Additional concepts
Customer options | Accessing the response | Long-running operations | Handling failures | Diagnostics | Mocking | Client lifetime
Examples
// Get a connection string to our Azure Storage business relationship. You tin can // obtain your connexion string from the Azure Portal (click // Access Keys under Settings in the Portal Storage account blade) // or using the Azure CLI with: // // az storage account show-connectedness-string --proper name <account_name> --resource-group <resource_group> // // And you lot tin can provide the connection string to your application // using an environment variable. string connectionString = "<connection_string>"; // Name of the share, directory, and file we'll create string shareName = "sample-share"; cord dirName = "sample-dir"; string fileName = "sample-file"; // Path to the local file to upload string localFilePath = @"<path_to_local_file>"; // Go a reference to a share and and so create it ShareClient share = new ShareClient(connectionString, shareName); share.Create(); // Get a reference to a directory and create it ShareDirectoryClient directory = share.GetDirectoryClient(dirName); directory.Create(); // Become a reference to a file and upload it ShareFileClient file = directory.GetFileClient(fileName); using (FileStream stream = File.OpenRead(localFilePath)) { file.Create(stream.Length); file.UploadRange( new HttpRange(0, stream.Length), stream); }
Download a file
cord connectionString = "<connection_string>"; // Proper name of the share, directory, and file we'll download from string shareName = "sample-share"; string dirName = "sample-dir"; string fileName = "sample-file"; // Path to the save the downloaded file cord localFilePath = @"<path_to_local_file>"; // Get a reference to the file ShareClient share = new ShareClient(connectionString, shareName); ShareDirectoryClient directory = share.GetDirectoryClient(dirName); ShareFileClient file = directory.GetFileClient(fileName); // Download the file ShareFileDownloadInfo download = file.Download(); using (FileStream stream = File.OpenWrite(localFilePath)) { download.Content.CopyTo(stream); }
// Connect to the share string connectionString = "<connection_string>"; string shareName = "sample-share"; ShareClient share = new ShareClient(connectionString, shareName); // Track the remaining directories to walk, starting from the root var remaining = new Queue<ShareDirectoryClient>(); remaining.Enqueue(share.GetRootDirectoryClient()); while (remaining.Count > 0) { // Get all of the next directory'southward files and subdirectories ShareDirectoryClient dir = remaining.Dequeue(); foreach (ShareFileItem detail in dir.GetFilesAndDirectories()) { // Print the proper noun of the particular Console.WriteLine(particular.Name); // Keep walking down directories if (item.IsDirectory) { remaining.Enqueue(dir.GetSubdirectoryClient(item.Name)); } } }
Async APIs
Nosotros fully back up both synchronous and asynchronous APIs.
string connectionString = "<connection_string>"; // Name of the share, directory, and file we'll download from string shareName = "sample-share"; string dirName = "sample-dir"; cord fileName = "sample-file"; // Path to the salve the downloaded file string localFilePath = @"<path_to_local_file>"; // Get a reference to the file ShareClient share = new ShareClient(connectionString, shareName); ShareDirectoryClient directory = share.GetDirectoryClient(dirName); ShareFileClient file = directory.GetFileClient(fileName); // Download the file ShareFileDownloadInfo download = wait file.DownloadAsync(); using (FileStream stream = File.OpenWrite(localFilePath)) { wait download.Content.CopyToAsync(stream); }
Troubleshooting
All Azure Storage File Shares service operations will throw a RequestFailedException on failure with helpful ErrorCode
s. Many of these errors are recoverable.
// Connect to the existing share string connectionString = "<connection_string>"; cord shareName = "sample-share"; ShareClient share = new ShareClient(connectionString, shareName); effort { // Try to create the share again share.Create(); } catch (RequestFailedException ex) when (ex.ErrorCode == ShareErrorCode.ShareAlreadyExists) { // Ignore any errors if the share already exists }
Next steps
Go started with our File samples:
- Hello World: Upload files, download files, and traverse shares (or asynchronously)
- Auth: Authenticate with connectedness strings, shared keys, and shared access signatures.
Contributing
See the Storage CONTRIBUTING.md for details on building, testing, and contributing to this library.
This projection welcomes contributions and suggestions. Nigh contributions require you to concord to a Contributor License Agreement (CLA) declaring that y'all take the right to, and really do, grant us the rights to use your contribution. For details, visit cla.microsoft.com.
This project has adopted the Microsoft Open up Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with whatever boosted questions or comments.
Feedback
Submit and view feedback for
Source: https://docs.microsoft.com/en-us/dotnet/api/overview/azure/storage.files.shares-readme
0 Response to "Asp.net Applicaiton Upload to Azure File Share"
Post a Comment