代码之家  ›  专栏  ›  技术社区  ›  bhargav porapu

如何使用.NETCore在azure门户中以编程方式创建主题

  •  -1
  • bhargav porapu  · 技术社区  · 6 年前

    下面是.NET中的代码框架。什么.net核心中的等效代码是否使用microsoft.azure.servicebus服务图书馆

    var namespaceManager = NamespaceManager.CreateFromConnectionString(ServiceBusConnectionString);
            if (!namespaceManager.TopicExists(topicName))
            {      // Configure Topic Settings.
                var td = new TopicDescription(topicName);
                td.MaxSizeInMegabytes = 1024;
                td.DefaultMessageTimeToLive = TimeSpan.FromMinutes(5);
    
                namespaceManager.CreateTopic(td);
            }
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Tom Sun    6 年前

    你也可以得到这个 issue 来自Azure SDK github。请参阅Azure服务总线 github

    管理Azure资源的标准方法是使用Azure资源管理器。为了使用以前存在于.NET Framework Service Bus客户端库中的功能,您需要使用Microsoft.Azure.Management.ServiceBus库。这将启用动态创建/读取/更新/删除资源的用例。

    目前,我们可以使用Azure fluent SDKMicrosoft.Azure.Management.流利Microsoft.Azure.Management.资源经理。流利去做那件事。关于如何创建身份验证文件,请参阅另一个 SO thread .

    var azureCredentials = SdkContext.AzureCredentialsFactory.FromFile("authfile paht"); // or different way
    var azure = Azure
                   .Configure()
                   .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
                   .Authenticate(azureCredentials)
                   .WithDefaultSubscription();
    var sbNameSpace = "service bus name space";
    var resoureGroup = "resourcegroup";
    var serviceBusNamespace = azure.ServiceBusNamespaces.GetByResourceGroup(resoureGroup, sbNameSpace);
    serviceBusNamespace.Topics
                       .Define("topicName")
                       .WithSizeInMB(1024)
                       .WithDefaultMessageTTL(TimeSpan.FromMinutes(5))
                       .Create();