Skip to content

QuickStart

MiNG edited this page May 2, 2018 · 1 revision

快速开始

using System;
using System.Threading.Tasks;
using Aliyun.Api.LogService;

namespace Examples
{
    static class Program
    {
        static async Task Main(String[] args)
        {
            // 1. 构建 `ILogServiceClient` 实例:
            var client = LogServiceClientBuilders.HttpBuilder
                .Endpoint("<endpoint>", "<projectName>")    // 设置「服务入口」和「项目名称」。
                .Credential("<accessKeyId>", "<accessKey>") // 设置「访问密钥」(RAM模式)
                .Build();

            // 2. 使用 `client` **异步**访问接口(请注意 `await`):
            var response = await client.GetLogsAsync
            (
                // 「必填参数」作为方法的普通必须参数。
                "example-logstore",
                DateTimeOffset.MinValue,
                DateTimeOffset.Now,

                // 「可选参数」作为方法的可选参数,可通过命名参数方式指定。
                offset: 1,
                line: 10
            );

            // 3. 从 `response` 中获取业务结果:
            var result = response
                .EnsureSuccess() // 此方法会确保返回的响应失败时候抛出 `LogServiceException`。
                .Result;         // 通过 `Result` 属性即可获取对应的业务结果。

            Console.WriteLine("Total logs: {0}", result.Count);
        }
    }
}

注意:异步主方法需要 C# 7.1 以上支持。

注意:在 Asp.NET 及 UI 环境(被设置了 SynchronizationContext 的环境)中请勿使用同步方式直接访问 Task.Result 属性否则会造成循环等待。

Clone this wiki locally