【问题标题】:How to pass runbook parameters from mvc website c# code to azure portal如何将 runbook 参数从 mvc 网站 c# 代码传递到 azure 门户
【发布时间】:2018-02-13 06:22:14
【问题描述】:

我有 MVC 网站,我在其中从 Webhook Uri 调用了 Runbook,但现在我想将输入参数传递给 Runbook。 下面的代码是我编写的调用 runbook 并传递参数,但参数是在 Webhookdata 中而不是作为输入。

using(var client = new HttpClient()) {
    client.BaseAddress = new Uri("https://s2events.azure-automation.net/");
    client.DefaultRequestHeaders.Accept.Clear();
    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

    // HTTP POST
    var parameters = new InputParam() {
      subscriptionId = mSubscriptnId,
      resourceGrpName = vMachine.ResourceGroupName,
      vmssName = vMachine.Name,
      vmssInstanceId = vMachine.InstanceId,
      action = vmssInstanceAction,
      count = "5"
    };

    HttpResponseMessage response = client.PostAsJsonAsync(mWebhookUri, parameters).Result;

    if(response.IsSuccessStatusCode) {
      Console.WriteLine(response.Content);
    }

【问题讨论】:

    标签: c# asp.net-mvc azure azure-runbook


    【解决方案1】:

    我得到了答案。 我们必须使用该 webhook-data 来获取输入参数。 检查下面的代码以从 Runbook 脚本获取输入参数。

    Param 
    (    
        [object] $WebhookData,
    )
    
    # Get the data object from WebhookData.
    $WebhookBody = (ConvertFrom-Json -InputObject $WebhookData.RequestBody)
    
    $subscriptionId = $WebhookBody.subscriptionId
    $resourceGrpName = $WebhookBody.resourceGrpName
    $vmssName = $WebhookBody.vmssName
    $vmssInstanceId = $WebhookBody.vmssInstanceId
    $action = $WebhookBody.action
    $count = $WebhookBody.count   
    

    【讨论】:

      猜你喜欢
      • 2020-10-30
      • 1970-01-01
      • 2021-07-27
      • 2012-04-18
      • 2022-12-07
      • 2021-07-18
      • 2022-08-19
      • 2018-12-23
      • 2022-01-04
      相关资源
      最近更新 更多