你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用于 .NET 的 Microsoft Azure Dns 管理客户端库
Microsoft Azure Dns 是 Dns 域的托管服务,它使用 Microsoft Azure 基础结构提供名称解析。 通过在 Microsoft Azure 中托管域,可以使用与其他 Azure 服务相同的凭据、API、工具和计费来管理 Dns 记录。
此库支持管理 Microsoft Azure Dns 资源。
此库遵循 新的 Azure SDK 准则,并提供许多核心功能:
- Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET.
- Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing.
- HTTP pipeline with custom policies.
- Better error-handling.
- Support uniform telemetry across all languages.
入门
安装包
使用 NuGet 安装适用于 .NET 的 Azure DNS 管理库:
dotnet add package Azure.ResourceManager.Dns
先决条件
- 必须具有 Microsoft Azure 订阅。
对客户端进行身份验证
若要创建经过身份验证的客户端并开始与 Microsoft Azure 资源交互,请参阅 此处的快速入门指南。
关键概念
可在此处找到用于 .NET 的 Microsoft Azure SDK的关键概念。
文档
文档可帮助你了解如何使用此包:
示例
创建 Dns 区域
ArmClient armClient = new ArmClient(new DefaultAzureCredential());
SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();
// first we need to get the resource group
string rgName = "myRgName";
ResourceGroupResource resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);
// Now we get the DnsZone collection from the resource group
DnsZoneCollection dnsZoneCollection = resourceGroup.GetDnsZones();
// Use the same location as the resource group
string dnsZoneName = "sample.com";
DnsZoneData data = new DnsZoneData("Global")
{
};
ArmOperation<DnsZoneResource> lro = await dnsZoneCollection.CreateOrUpdateAsync(WaitUntil.Completed, dnsZoneName, data);
DnsZoneResource dnsZone = lro.Value;
获取资源组中的所有 Dns 区域
ArmClient armClient = new ArmClient(new DefaultAzureCredential());
SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();
// first we need to get the resource group
string rgName = "myRgName";
ResourceGroupResource resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);
// Now we get the DnsZone collection from the resource group
DnsZoneCollection dnsZoneCollection = resourceGroup.GetDnsZones();
// With ListAsync(), we can get a list of the DnsZones
AsyncPageable<DnsZoneResource> response = dnsZoneCollection.GetAllAsync();
await foreach (DnsZoneResource dnsZone in response)
{
Console.WriteLine(dnsZone.Data.Name);
}
删除 Dns 区域
ArmClient armClient = new ArmClient(new DefaultAzureCredential());
SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();
// first we need to get the resource group
string rgName = "myRgName";
ResourceGroupResource resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);
// Now we get the DnsZone collection from the resource group
DnsZoneCollection dnsZoneCollection = resourceGroup.GetDnsZones();
string dnsZoneName = "sample.com";
DnsZoneResource dnsZone =await dnsZoneCollection.GetAsync(dnsZoneName);
await dnsZone.DeleteAsync(WaitUntil.Completed);
疑难解答
- 通过 GitHub 问题提出问题。
- 使用 Azure 和 .NET 标记在 Stack Overflow 上检查 以前的问题 或提出新问题。
- 如在身份验证时遇到问题,请转到 DefaultAzureCredential 文档。
后续步骤
更多示例代码
其他文档
有关 Microsoft Azure SDK 的详细信息,请参阅 此网站。
供稿
有关参与此存储库的详细信息,请参阅 参与指南。
本项目欢迎贡献和建议。 大多数贡献要求你同意贡献者许可协议 (CLA),并声明你有权(并且确实有权)授予我们使用你的贡献的权利。 有关详细信息,请访问 https://cla.microsoft.com 。
提交拉取请求时,CLA 机器人会自动确定是否需要提供 CLA 并适当修饰 PR (例如标签、注释) 。 按照机器人提供的说明操作。 只需使用 CLA 在所有存储库中执行此操作一次。
此项目采用了 Microsoft 开放源代码行为准则。 有关详细信息,请参阅行为准则常见问题解答,如有任何其他问题或评论,请联系 opencode@microsoft.com。