C# SDK使用手冊
更新時間:
本文介紹了C# SDK的安裝方法、示例代碼以及如何使用C# SDK發(fā)布事件。
SDK簡介
事件總線EventBridge的SDK分為管控API SDK和數(shù)據(jù)API SDK,示例代碼有所不同。
管控API SDK:對控制臺頁面進行操作使用的SDK。
數(shù)據(jù)API SDK:事件數(shù)據(jù)的通道,目前只有發(fā)送事件(PutEvents)屬于此類。
前提條件
您已完成以下操作:
環(huán)境準備
環(huán)境要求
安裝.NET Core 2.0以上版本。更多信息,請參見安裝.NET。
安裝Visual Studio 2010以上版本。更多信息,請參見安裝Visual Studio。
查看語言版本
執(zhí)行命令
dotnet --version
查看.NET Core版本。
管控API SDK
安裝SDK
在Visual Studio中安裝C# SDK。
選擇 。
執(zhí)行以下命令安裝C# SDK。
Install-Package AlibabaCloud.SDK.Eventbridge20200401 -Version 1.0.0
SDK示例
您可以在OpenAPI門戶通過調(diào)用API接口,自動生成對應(yīng)的SDK示例。具體操作,請參見如何自動生成SDK示例。
數(shù)據(jù)API SDK
安裝SDK
在Visual Studio中安裝C# SDK。
選擇 。
執(zhí)行以下命令安裝C# SDK。
Install-Package AlibabaCloud.SDK.Eventbridge
SDK示例
數(shù)據(jù)API SDK目前只包含發(fā)布事件(PutEvents),如需使用C# SDK發(fā)布一個或多個事件,請參考以下示例代碼。
using System;
using System.Collections.Generic;
using Tea;
namespace Alibabacloud.Sample
{
public class Client
{
/**
* Create client初始化公共請求參數(shù)。
*/
public static AlibabaCloud.SDK.EventBridge.EventBridgeClient CreateClient()
{
AlibabaCloud.SDK.EventBridge.Models.Config config = new AlibabaCloud.SDK.EventBridge.Models.Config();
SetAccessKeyId(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")).
SetAccessKeySecret(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")).
SetEndpoint("<endpoint>")
return new AlibabaCloud.SDK.EventBridge.EventBridgeClient(config);
}
/**
* PutEvents
*/
public static void PutEvents(AlibabaCloud.SDK.EventBridge.EventBridgeClient client)
{
AlibabaCloud.SDK.EventBridge.Models.CloudEvent event_ = new AlibabaCloud.SDK.EventBridge.Models.CloudEvent();
event_.Datacontenttype = "application/json";
event_.Data = AlibabaCloud.TeaUtil.Common.ToBytes("test");
event_.Id = "a5074581-7e74-4e4c-868f-47e7afdf****";
event_.Source = "acs.oss";
event_.Specversion = "1.0";
event_.Type = "oss:ObjectCreated:PostObject";
event_.Time = "2020-08-24T13:54:05.965Asia/Shanghai";
event_.Subject = "1.0";
event_.Type = "acs:oss:cn-hangzhou:1234567:xls-papk/game_apk/123.jpg";
event_.Extensions = new Dictionary<string, object>
{ { "aliyuneventbusname", "demo-bus" },
};
try
{
AlibabaCloud.SDK.EventBridge.Models.PutEventsResponse resp = client.PutEvents(new List<AlibabaCloud.SDK.EventBridge.Models.CloudEvent>
{
event_
});
Console.WriteLine("--------------------Publish event to the aliyun EventBus--------------------");
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(resp.ToMap()));
}
catch (TeaException error)
{
Console.WriteLine(error.Message);
}
catch (Exception _error)
{
TeaException error = new TeaException(new Dictionary<string, object>
{ { "message", _error.Message }
});
Console.WriteLine(error.Message);
}
}
static void Main(string[] args)
{
AlibabaCloud.SDK.EventBridge.EventBridgeClient client = Client.CreateClient();
Client.PutEvents(client);
Console.ReadKey();
}
}
}
文檔內(nèi)容是否對您有幫助?