簡體   English   中英

無法使用Rackspace Cloud DNS和openstack.net創建域

[英]cannot creat a domain using Rackspace Cloud DNS with openstack.net

我目前正在嘗試使用openstack.net sdk在Rackspace Cloud DNS服務上創建一個域,但是沒有任何反應。

我有我的機架帳戶,它已激活,我也有我的API密鑰。

我編寫了一個控制台應用程序來測試我的代碼,但結果始終為“ WaitingForActivation”,而且我無法使用openstack.net SDK找到關於cloudsDNS的任何文檔。

任何人都可以看一下我的代碼,然后告訴我我做錯了什么。

私有靜態字符串RackSpaceUserName {get {return“ username”; }}

    private static string RackSpaceUserApiKey
    {
        get { return "apikey"; }
    }

    private UserAccess RackSpaceUser
    {
        get
        {

            IIdentityProvider identityProvider = new CloudIdentityProvider();

            var userAccess = identityProvider.Authenticate(Cloudidentity);

            return userAccess;
        }

    }

    private static CloudIdentity Cloudidentity
    {
        get
        {
            var ci = new CloudIdentity
            {
                APIKey = RackSpaceUserApiKey,
                Username = RackSpaceUserName
            };

            return ci;
        }
    }


    static void Main(string[] args)
    {
        var ParkedDomain = new CloudDnsProvider(Cloudidentity, null, true, null);

        List<DnsDomainRecordConfiguration> dnsrecords = new List<DnsDomainRecordConfiguration>();

        dnsrecords.Add(new DnsDomainRecordConfiguration(DnsRecordType.Ns, "testdomain.com", "dns1.stabletransit.com", TimeSpan.FromMinutes(20), null, null));

        dnsrecords.Add(new DnsDomainRecordConfiguration(DnsRecordType.Ns, "testdomain.com", "dns2.stabletransit.com", TimeSpan.FromMinutes(20), null, null));

        List<DnsSubdomainConfiguration> subdomains = new List<DnsSubdomainConfiguration>();

        subdomains.Add(new DnsSubdomainConfiguration("info@testdomain.com", "test", ""));

        DnsDomainConfiguration dnsd = new DnsDomainConfiguration("testdomain.com", TimeSpan.FromMinutes(20), "info@testdomain.com", "", dnsrecords, subdomains);

        DnsConfiguration dnsconfig = new DnsConfiguration(dnsd);

        var result = ParkedDomain.CreateDomainsAsync(dnsconfig, AsyncCompletionOption.RequestCompleted, CancellationToken.None, null);

        Console.Write(result.Status);

        Console.ReadLine();
    }

result.Status的值始終返回“ WaitingForActivation”,當我檢查機架雲dns儀表板時,不會創建任何域。

任何幫助將不勝感激。

DNS服務使用異步方法。 CreateDomainsAsync返回的對象是一個Task ,代表異步操作,但是該操作可能在調用返回之前未完成。 您可以通過以下任一方法等待代碼中的請求完成:

  1. 等待結果(僅在async方法中允許,而Main不可以)。

     await result; 
  2. 訪問Task<TResult>.Result屬性。

     var completedResult = result.Result; 
  3. 調用Task.Wait方法。

     result.Wait(); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM