SqlElasticPool.cs•1.68 kB
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
using System.Text.Json.Serialization;
namespace AzureMcp.Sql.Models;
public record SqlElasticPool(
    [property: JsonPropertyName("name")] string Name,
    [property: JsonPropertyName("id")] string Id,
    [property: JsonPropertyName("type")] string Type,
    [property: JsonPropertyName("location")] string? Location,
    [property: JsonPropertyName("sku")] ElasticPoolSku? Sku,
    [property: JsonPropertyName("state")] string? State,
    [property: JsonPropertyName("creationDate")] DateTimeOffset? CreationDate,
    [property: JsonPropertyName("maxSizeBytes")] long? MaxSizeBytes,
    [property: JsonPropertyName("perDatabaseSettings")] ElasticPoolPerDatabaseSettings? PerDatabaseSettings,
    [property: JsonPropertyName("zoneRedundant")] bool? ZoneRedundant,
    [property: JsonPropertyName("licenseType")] string? LicenseType,
    [property: JsonPropertyName("databaseDtuMin")] int? DatabaseDtuMin,
    [property: JsonPropertyName("databaseDtuMax")] int? DatabaseDtuMax,
    [property: JsonPropertyName("dtu")] int? Dtu,
    [property: JsonPropertyName("storageMB")] int? StorageMB
);
public record ElasticPoolSku(
    [property: JsonPropertyName("name")] string? Name,
    [property: JsonPropertyName("tier")] string? Tier,
    [property: JsonPropertyName("capacity")] int? Capacity,
    [property: JsonPropertyName("family")] string? Family,
    [property: JsonPropertyName("size")] string? Size
);
public record ElasticPoolPerDatabaseSettings(
    [property: JsonPropertyName("minCapacity")] double? MinCapacity,
    [property: JsonPropertyName("maxCapacity")] double? MaxCapacity
);