.NET ile Azure Dosyaları için geliştirme
Verileri depolamak için Azure dosyaları 'nı kullanan .NET uygulamaları geliştirmeye ilişkin temel bilgileri öğrenin. Bu makalede, .NET ve Azure dosyaları ile aşağıdakileri yapmak üzere basit bir konsol uygulamasının nasıl oluşturulacağı gösterilmektedir:
- Bir dosyanın içeriğini alın.
- Dosya paylaşımının en büyük boyutunu veya kotasını ayarlayın.
- Bir dosya için paylaşılan erişim imzası (SAS) oluşturun.
- Bir dosyayı aynı depolama hesabındaki başka bir dosyaya kopyalama.
- Bir dosyayı aynı depolama hesabındaki bir bloba kopyalama.
- Dosya paylaşımının anlık görüntüsünü oluşturun.
- Paylaşma anlık görüntüsünden bir dosyayı geri yükleyin.
- sorun giderme için Azure Depolama ölçümlerini kullanın.
Azure dosyaları hakkında daha fazla bilgi edinmek için bkz. Azure dosyaları nedir?
İpucu
Azure Depolama kod örnekleri havuzuna göz atın
İndirip çalıştırabileceğiniz kullanımı kolay uçtan uca Azure Depolama kod örnekleri lütfen Azure Depolama Örnekleri listemize bakın.
Şunlara uygulanır
| Dosya paylaşma türü | SMB | NFS |
|---|---|---|
| Standart dosya paylaşımları (GPv2), LRS/ZRS | ||
| Standart dosya paylaşımları (GPv2), GRS/GZRS | ||
| Premium dosya paylaşımları (filestorage), lrs/zrs |
.NET API'lerini anlama
Azure Dosyaları istemci uygulamalarına iki geniş yaklaşım sağlar: Sunucu İleti Bloğu (SMB) ve REST. .NET içinde, System.IO ve Azure.Storage.Files.Shares API 'leri bu yaklaşımları soyutlar.
| API | Kullanılması gereken durumlar | Notlar |
|---|---|---|
| System.IO | Uygulamanız:
|
SMB üzerinden Azure dosyaları ile uygulanan dosya g/ç, genellikle herhangi bir ağ dosya paylaşımıyla veya yerel depolama cihazındaki g/ç ile aynıdır. .NET 'teki dosya g/ç dahil olmak üzere çeşitli özelliklere giriş için, bkz. konsol uygulaması öğreticisi. |
| Mavisi. Depolama. Dosyalar. paylaşımlar | Uygulamanız:
|
Bu makalede, dosya Azure.Storage.Files.Shares PAYLAŞıMıNıN SMB ve yönetimi yerıne Rest kullanan dosya g/ç için kullanımı gösterilmektedir. |
Konsol uygulaması oluşturma ve derleme alma
Azure dosyaları istemci kitaplığını herhangi bir tür .NET uygulamasında kullanabilirsiniz. Bu uygulamalar Azure bulutu, Web, masaüstü ve mobil uygulamaları içerir. Bu kılavuzda basitlik için bir konsol uygulaması oluşturacağız.
Visual Studio'da yeni bir Windows konsol uygulaması oluşturun. aşağıdaki adımlarda Visual Studio 2019 ' de bir konsol uygulamasının nasıl oluşturulacağı gösterilmektedir. Adımlar Visual Studio’nun diğer sürümlerinde de benzerdir.
- Visual Studio başlatın ve yeni proje oluştur' u seçin.
- yeni proje oluştur bölümünde C# için konsol uygulaması (.NET Framework) öğesini seçin ve ardından ileri' yi seçin.
- Yeni projenizi yapılandırın bölümünde uygulama için bir ad girin ve Oluştur' u seçin.
Bu makaledeki tüm kod örneklerini Program program. cs dosyasındaki sınıfına ekleyin.
Gereken paketleri yüklemek için NuGet kullanma
Projenizdeki bu paketlere başvurun:
- .Net Için Azure çekirdek kitaplığı: Bu paket, Azure istemci işlem hattının uygulamasıdır.
- .net için Azure Depolama Blobu istemci kitaplığı: bu paket, depolama hesabınızdaki Blob kaynaklarına programlı erişim sağlar.
- .net için Azure Depolama dosyaları istemci kitaplığı: bu paket, depolama hesabınızdaki dosya kaynaklarına programlı erişim sağlar.
- .Net Için sistem Configuration Manager kitaplığı: Bu paket, bir yapılandırma dosyasında değerleri depolayan ve almak için bir sınıf sağlar.
paketleri almak için NuGet kullanabilirsiniz. Şu adımları izleyin:
Çözüm Gezgini, projenize sağ tıklayın ve NuGet paketlerini yönet' i seçin.
NuGet Paket Yöneticisi' de, araştır' ı seçin. Sonra Azure. Core' u arayıp seçin ve ardından Install' ı seçin.
Bu adım paketini ve bağımlılıklarını yüklenir.
Bu paketleri arayın ve yükler:
- Mavisi. Depolama. Larını
- Mavisi. Depolama. Dosyalar. paylaşımlar
- System.Configuration.ConfigurationManager
Depolama hesabı kimlik bilgilerinizi App.config dosyasına kaydedin
Ardından, kimlik bilgilerinizi projenizin App.config dosyasına kaydedin. Çözüm Gezgini, App.config dosyayı aşağıdaki örneğe benzer olacak şekilde çift tıklayın ve düzenleyin.
myaccountDepolama hesabı adınızla ve mykey depolama hesabı anahtarınızla değiştirin.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net" />
<add key="StorageAccountName" value="myaccount" />
<add key="StorageAccountKey" value="mykey" />
</appSettings>
</configuration>
Not
Azurite depolama öykünücüsü Şu anda Azure dosyalarını desteklemiyor. Bağlantı dizeniz, Azure dosyaları ile çalışmak için buluttaki bir Azure Depolama hesabını hedeflemelidir.
Using yönergeleri ekleme
Çözüm Gezgini, program. cs dosyasını açın ve aşağıdaki using yönergelerini dosyanın en üstüne ekleyin.
using System;
using System.Configuration;
using System.IO;
using System.Threading.Tasks;
using Azure;
using Azure.Storage;
using Azure.Storage.Blobs;
using Azure.Storage.Files.Shares;
using Azure.Storage.Files.Shares.Models;
using Azure.Storage.Sas;
Dosya paylaşımına programlamayla erişme
Program. cs dosyasında dosya paylaşımında program aracılığıyla erişmek için aşağıdaki kodu ekleyin.
Aşağıdaki yöntem, zaten yoksa bir dosya paylaşma oluşturur. Yöntemi bir bağlantı dizesinden bir parça eClient nesnesi oluşturarak başlar. Örnek daha sonra daha önce oluşturduğumuz bir dosyayı indirmeye çalışır. Bu yöntemi kaynağından çağırın Main() .
//-------------------------------------------------
// Create a file share
//-------------------------------------------------
public async Task CreateShareAsync(string shareName)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instantiate a ShareClient which will be used to create and manipulate the file share
ShareClient share = new ShareClient(connectionString, shareName);
// Create the share if it doesn't already exist
await share.CreateIfNotExistsAsync();
// Ensure that the share exists
if (await share.ExistsAsync())
{
Console.WriteLine($"Share created: {share.Name}");
// Get a reference to the sample directory
ShareDirectoryClient directory = share.GetDirectoryClient("CustomLogs");
// Create the directory if it doesn't already exist
await directory.CreateIfNotExistsAsync();
// Ensure that the directory exists
if (await directory.ExistsAsync())
{
// Get a reference to a file object
ShareFileClient file = directory.GetFileClient("Log1.txt");
// Ensure that the file exists
if (await file.ExistsAsync())
{
Console.WriteLine($"File exists: {file.Name}");
// Download the file
ShareFileDownloadInfo download = await file.DownloadAsync();
// Save the data to a local file, overwrite if the file already exists
using (FileStream stream = File.OpenWrite(@"downloadedLog1.txt"))
{
await download.Content.CopyToAsync(stream);
await stream.FlushAsync();
stream.Close();
// Display where the file was saved
Console.WriteLine($"File downloaded: {stream.Name}");
}
}
}
}
else
{
Console.WriteLine($"CreateShareAsync failed");
}
}
Dosya paylaşımı için boyut üst sınırını ayarlama
Azure dosyaları istemci kitaplığı 'nın 5. x sürümünden başlayarak, bir dosya paylaşımının kotasını (en büyük boyut) ayarlayabilirsiniz. Paylaşımda halihazırda ne kadar verinin depolandığını da kontrol edebilirsiniz.
Bir paylaşımın kotasının ayarlanması, paylaşımda depolanan dosyaların toplam boyutunu sınırlar. Paylaşımdaki dosyaların toplam boyutu kotayı aşarsa, istemciler mevcut dosyaların boyutunu artırabilir. İstemciler ayrıca, bu dosyalar boş olmadığı takdirde yeni dosyalar oluşturamaz.
Aşağıdaki örnekte, paylaşımdaki mevcut kullanımını nasıl kontrol edileceği veya paylaşım için nasıl kota ayarlanacağı gösterilmiştir.
//-------------------------------------------------
// Set the maximum size of a share
//-------------------------------------------------
public async Task SetMaxShareSizeAsync(string shareName, int increaseSizeInGiB)
{
const long ONE_GIBIBYTE = 10737420000; // Number of bytes in 1 gibibyte
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instantiate a ShareClient which will be used to access the file share
ShareClient share = new ShareClient(connectionString, shareName);
// Create the share if it doesn't already exist
await share.CreateIfNotExistsAsync();
// Ensure that the share exists
if (await share.ExistsAsync())
{
// Get and display current share quota
ShareProperties properties = await share.GetPropertiesAsync();
Console.WriteLine($"Current share quota: {properties.QuotaInGB} GiB");
// Get and display current usage stats for the share
ShareStatistics stats = await share.GetStatisticsAsync();
Console.WriteLine($"Current share usage: {stats.ShareUsageInBytes} bytes");
// Convert current usage from bytes into GiB
int currentGiB = (int)(stats.ShareUsageInBytes / ONE_GIBIBYTE);
// This line sets the quota to be the current
// usage of the share plus the increase amount
await share.SetQuotaAsync(currentGiB + increaseSizeInGiB);
// Get the new quota and display it
properties = await share.GetPropertiesAsync();
Console.WriteLine($"New share quota: {properties.QuotaInGB} GiB");
}
}
Dosya veya dosya paylaşımı için paylaşılan erişim imzası oluşturma
Azure dosyaları istemci kitaplığı 'nın 5. x sürümünden başlayarak, bir dosya paylaşımında veya tek bir dosya için paylaşılan erişim imzası (SAS) oluşturabilirsiniz.
Aşağıdaki örnek yöntemi belirtilen paylaşımdaki bir dosya üzerinde bir SAS döndürür.
//-------------------------------------------------
// Create a SAS URI for a file
//-------------------------------------------------
public Uri GetFileSasUri(string shareName, string filePath, DateTime expiration, ShareFileSasPermissions permissions)
{
// Get the account details from app settings
string accountName = ConfigurationManager.AppSettings["StorageAccountName"];
string accountKey = ConfigurationManager.AppSettings["StorageAccountKey"];
ShareSasBuilder fileSAS = new ShareSasBuilder()
{
ShareName = shareName,
FilePath = filePath,
// Specify an Azure file resource
Resource = "f",
// Expires in 24 hours
ExpiresOn = expiration
};
// Set the permissions for the SAS
fileSAS.SetPermissions(permissions);
// Create a SharedKeyCredential that we can use to sign the SAS token
StorageSharedKeyCredential credential = new StorageSharedKeyCredential(accountName, accountKey);
// Build a SAS URI
UriBuilder fileSasUri = new UriBuilder($"https://{accountName}.file.core.windows.net/{fileSAS.ShareName}/{fileSAS.FilePath}");
fileSasUri.Query = fileSAS.ToSasQueryParameters(credential).ToString();
// Return the URI
return fileSasUri.Uri;
}
Paylaşılan erişim imzaları oluşturma ve kullanma hakkında daha fazla bilgi için bkz. paylaşılan erişim Imzası nasıl kullanılır.
Dosyaları kopyalama
Azure dosyaları istemci kitaplığı 'nın 5. x sürümünden başlayarak, bir dosyayı başka bir dosyaya, bir bloba bir dosyaya veya bir bloba bir dosyaya kopyalayabilirsiniz.
AzCopy komutunu Ayrıca bir dosyayı başka bir dosyaya kopyalamak veya bir blobu bir dosyaya ya da başka bir yolla kopyalamak için de kullanabilirsiniz. Bkz. AzCopy ile çalışmaya başlama.
Not
Bir blobu dosyaya veya bir dosyayı bloba kopyalamak için aynı depolama hesabında kopyalama yapıyor olsanız da kaynak nesnesi erişimini yetkilendirmek amacıyla bir paylaşılan erişim imzası (SAS) kullanmanız gerekir.
Dosyayı başka bir dosyaya kopyalama
Aşağıdaki örnekte, bir dosya aynı paylaşımdaki başka bir dosyaya kopyalanır. Bu işlem dosyaları aynı depolama hesabında kopyalayacağından kopyayı yapmak için paylaşılan anahtar kimlik doğrulamasını kullanabilirsiniz.
//-------------------------------------------------
// Copy file within a directory
//-------------------------------------------------
public async Task CopyFileAsync(string shareName, string sourceFilePath, string destFilePath)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Get a reference to the file we created previously
ShareFileClient sourceFile = new ShareFileClient(connectionString, shareName, sourceFilePath);
// Ensure that the source file exists
if (await sourceFile.ExistsAsync())
{
// Get a reference to the destination file
ShareFileClient destFile = new ShareFileClient(connectionString, shareName, destFilePath);
// Start the copy operation
await destFile.StartCopyAsync(sourceFile.Uri);
if (await destFile.ExistsAsync())
{
Console.WriteLine($"{sourceFile.Uri} copied to {destFile.Uri}");
}
}
}
Dosyayı bir bloba kopyalama
Aşağıdaki örnekte, bir dosya oluşturulur ve aynı depolama hesabındaki bir bloba kopyalanır. Örnekte, kaynak dosya için hizmetin kopyalama sırasında kaynak dosyaya erişimi yetkilendirmek üzere kullandığı bir SAS oluşturulur.
//-------------------------------------------------
// Copy a file from a share to a blob
//-------------------------------------------------
public async Task CopyFileToBlobAsync(string shareName, string sourceFilePath, string containerName, string blobName)
{
// Get a file SAS from the method created ealier
Uri fileSasUri = GetFileSasUri(shareName, sourceFilePath, DateTime.UtcNow.AddHours(24), ShareFileSasPermissions.Read);
// Get a reference to the file we created previously
ShareFileClient sourceFile = new ShareFileClient(fileSasUri);
// Ensure that the source file exists
if (await sourceFile.ExistsAsync())
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Get a reference to the destination container
BlobContainerClient container = new BlobContainerClient(connectionString, containerName);
// Create the container if it doesn't already exist
await container.CreateIfNotExistsAsync();
BlobClient destBlob = container.GetBlobClient(blobName);
await destBlob.StartCopyFromUriAsync(sourceFile.Uri);
if (await destBlob.ExistsAsync())
{
Console.WriteLine($"File {sourceFile.Name} copied to blob {destBlob.Name}");
}
}
}
Aynı şekilde, bir blobu bir dosyaya kopyalayabilirsiniz. Kaynak dosya bir blob ise, kopyalama sırasında bu bloba erişimi yetkilendirmesi için bir SAS oluşturun.
Anlık görüntü paylaşma
Azure dosyaları istemci kitaplığı sürüm 8,5 ' den başlayarak bir paylaşma anlık görüntüsü oluşturabilirsiniz. Ayrıca paylaşım anlık görüntülerini listeleyebilir, onlara göz atabilir ve paylaşım anlık görüntülerini silebilirsiniz. Oluşturulduktan sonra, paylaşma anlık görüntüleri salt okunurdur.
Paylaşım anlık görüntüsü oluşturma
Aşağıdaki örnekte dosya paylaşım anlık görüntüsü oluşturulmaktadır.
//-------------------------------------------------
// Create a share snapshot
//-------------------------------------------------
public async Task CreateShareSnapshotAsync(string shareName)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareServiceClient = new ShareServiceClient(connectionString);
// Instantiate a ShareClient which will be used to access the file share
ShareClient share = shareServiceClient.GetShareClient(shareName);
// Ensure that the share exists
if (await share.ExistsAsync())
{
// Create a snapshot
ShareSnapshotInfo snapshotInfo = await share.CreateSnapshotAsync();
Console.WriteLine($"Snapshot created: {snapshotInfo.Snapshot}");
}
}
Paylaşım anlık görüntülerini listeleme
Aşağıdaki örnek, bir paylaşımdaki anlık görüntüleri listeler.
//-------------------------------------------------
// List the snapshots on a share
//-------------------------------------------------
public void ListShareSnapshots()
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareServiceClient = new ShareServiceClient(connectionString);
// Display each share and the snapshots on each share
foreach (ShareItem item in shareServiceClient.GetShares(ShareTraits.All, ShareStates.Snapshots))
{
if (null != item.Snapshot)
{
Console.WriteLine($"Share: {item.Name}\tSnapshot: {item.Snapshot}");
}
}
}
Dosya ve dizinleri paylaşılan anlık görüntüler içinde Listele
Aşağıdaki örnek, paylaşılan anlık görüntüler içindeki dosyalara ve dizinlere göz atar.
//-------------------------------------------------
// List the snapshots on a share
//-------------------------------------------------
public void ListSnapshotContents(string shareName, string snapshotTime)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareService = new ShareServiceClient(connectionString);
// Get a ShareClient
ShareClient share = shareService.GetShareClient(shareName);
Console.WriteLine($"Share: {share.Name}");
// Get as ShareClient that points to a snapshot
ShareClient snapshot = share.WithSnapshot(snapshotTime);
// Get the root directory in the snapshot share
ShareDirectoryClient rootDir = snapshot.GetRootDirectoryClient();
// Recursively list the directory tree
ListDirTree(rootDir);
}
//-------------------------------------------------
// Recursively list a directory tree
//-------------------------------------------------
public void ListDirTree(ShareDirectoryClient dir)
{
// List the files and directories in the snapshot
foreach (ShareFileItem item in dir.GetFilesAndDirectories())
{
if (item.IsDirectory)
{
Console.WriteLine($"Directory: {item.Name}");
ShareDirectoryClient subDir = dir.GetSubdirectoryClient(item.Name);
ListDirTree(subDir);
}
else
{
Console.WriteLine($"File: {dir.Name}\\{item.Name}");
}
}
}
Dosya paylaşımlarını veya dosyaları paylaşım anlık görüntülerinden geri yükleme
Bir dosya paylaşımının anlık görüntüsünü almak, tek tek dosyaları veya tüm dosya paylaşımının kurtarılmasına olanak sağlar.
Bir dosya paylaşımının paylaşım anlık görüntülerini sorgulayarak bir dosya paylaşım anlık görüntüsündeki dosyayı geri yükleyebilirsiniz. Ardından, belirli bir paylaşılan anlık görüntüye ait olan bir dosyayı alabilirsiniz. Dosyayı doğrudan okumak veya geri yüklemek için bu sürümü kullanın.
//-------------------------------------------------
// Restore file from snapshot
//-------------------------------------------------
public async Task RestoreFileFromSnapshot(string shareName, string directoryName, string fileName, string snapshotTime)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareService = new ShareServiceClient(connectionString);
// Get a ShareClient
ShareClient share = shareService.GetShareClient(shareName);
// Get as ShareClient that points to a snapshot
ShareClient snapshot = share.WithSnapshot(snapshotTime);
// Get a ShareDirectoryClient, then a ShareFileClient to the snapshot file
ShareDirectoryClient snapshotDir = snapshot.GetDirectoryClient(directoryName);
ShareFileClient snapshotFile = snapshotDir.GetFileClient(fileName);
// Get a ShareDirectoryClient, then a ShareFileClient to the live file
ShareDirectoryClient liveDir = share.GetDirectoryClient(directoryName);
ShareFileClient liveFile = liveDir.GetFileClient(fileName);
// Restore the file from the snapshot
ShareFileCopyInfo copyInfo = await liveFile.StartCopyAsync(snapshotFile.Uri);
// Display the status of the operation
Console.WriteLine($"Restore status: {copyInfo.CopyStatus}");
}
Paylaşım anlık görüntülerini silme
Aşağıdaki örnekte dosya paylaşım anlık görüntüsü silinmektedir.
//-------------------------------------------------
// Delete a snapshot
//-------------------------------------------------
public async Task DeleteSnapshotAsync(string shareName, string snapshotTime)
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareService = new ShareServiceClient(connectionString);
// Get a ShareClient
ShareClient share = shareService.GetShareClient(shareName);
// Get a ShareClient that points to a snapshot
ShareClient snapshotShare = share.WithSnapshot(snapshotTime);
try
{
// Delete the snapshot
await snapshotShare.DeleteIfExistsAsync();
}
catch (RequestFailedException ex)
{
Console.WriteLine($"Exception: {ex.Message}");
Console.WriteLine($"Error code: {ex.Status}\t{ex.ErrorCode}");
}
}
Ölçümleri kullanarak Azure dosyaları sorunlarını giderme
Azure Depolama Analizi, Azure dosyaları için ölçümleri destekler. Ölçüm verilerini kullanarak istekleri ve tanılama sorunlarını izleyebilirsiniz.
Azure PortalAzure dosyaları için ölçümleri etkinleştirebilirsiniz. Ayrıca, Azure Files istemci kitaplığındaki REST API veya analoglarından biri ile Dosya hizmeti özelliklerini ayarlama işlemini çağırarak ölçümleri programlı bir şekilde etkinleştirebilirsiniz.
Aşağıdaki kod örneği, Azure dosyaları için ölçümleri etkinleştirmek üzere .NET istemci kitaplığı 'nın nasıl kullanılacağını göstermektedir.
//-------------------------------------------------
// Use metrics
//-------------------------------------------------
public async Task UseMetricsAsync()
{
// Get the connection string from app settings
string connectionString = ConfigurationManager.AppSettings["StorageConnectionString"];
// Instatiate a ShareServiceClient
ShareServiceClient shareService = new ShareServiceClient(connectionString);
// Set metrics properties for File service
await shareService.SetPropertiesAsync(new ShareServiceProperties()
{
// Set hour metrics
HourMetrics = new ShareMetrics()
{
Enabled = true,
IncludeApis = true,
Version = "1.0",
RetentionPolicy = new ShareRetentionPolicy()
{
Enabled = true,
Days = 14
}
},
// Set minute metrics
MinuteMetrics = new ShareMetrics()
{
Enabled = true,
IncludeApis = true,
Version = "1.0",
RetentionPolicy = new ShareRetentionPolicy()
{
Enabled = true,
Days = 7
}
}
});
// Read the metrics properties we just set
ShareServiceProperties serviceProperties = await shareService.GetPropertiesAsync();
// Display the properties
Console.WriteLine();
Console.WriteLine($"HourMetrics.InludeApis: {serviceProperties.HourMetrics.IncludeApis}");
Console.WriteLine($"HourMetrics.RetentionPolicy.Days: {serviceProperties.HourMetrics.RetentionPolicy.Days}");
Console.WriteLine($"HourMetrics.Version: {serviceProperties.HourMetrics.Version}");
Console.WriteLine();
Console.WriteLine($"MinuteMetrics.InludeApis: {serviceProperties.MinuteMetrics.IncludeApis}");
Console.WriteLine($"MinuteMetrics.RetentionPolicy.Days: {serviceProperties.MinuteMetrics.RetentionPolicy.Days}");
Console.WriteLine($"MinuteMetrics.Version: {serviceProperties.MinuteMetrics.Version}");
Console.WriteLine();
}
Herhangi bir sorunla karşılaşırsanız Windows Azure dosyaları sorunlarını gidermebölümüne başvurabilirsiniz.
Sonraki adımlar
Azure dosyaları hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın:
Kavramsal makaleler ve videolar
- Azure Dosyaları: Windows ve Linux için uyumlu bulut SMB dosya sistemi
- Linux ile Azure Dosyalar’ı kullanma