You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
2.1 KiB

1 month ago
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace LTEMvcApp.Models
{
/// <summary>
/// 网络配置聚合根
/// </summary>
public class NetworkConfiguration
{
/// <summary>
/// 配置键值
/// </summary>
[JsonPropertyName("configKey")]
public string ConfigKey { get; set; } = string.Empty;
/// <summary>
/// RAN配置文件路径
/// </summary>
[JsonPropertyName("ragConfig")]
public string RagConfig { get; set; } = string.Empty;
/// <summary>
/// 核心网和IMS配置列表
/// </summary>
[JsonPropertyName("coreOrImsConfigs")]
public List<CoreImsConfig> CoreOrImsConfigs { get; set; } = new();
/// <summary>
/// APN配置
/// </summary>
[Required(ErrorMessage = "APN配置不能为空")]
[JsonPropertyName("apn")]
public string Apn { get; set; } = string.Empty;
/// <summary>
/// 频段配置
/// </summary>
[JsonPropertyName("band")]
public List<string> Band { get; set; } = new();
/// <summary>
/// 配置说明
/// </summary>
[JsonPropertyName("comment")]
public string Comment { get; set; } = string.Empty;
}
/// <summary>
/// 核心网和IMS配置
/// </summary>
public class CoreImsConfig
{
/// <summary>
/// 索引
/// </summary>
[JsonPropertyName("index")]
public int Index { get; set; }
/// <summary>
/// PLMN
/// </summary>
[JsonPropertyName("plmn")]
public string Plmn { get; set; } = string.Empty;
/// <summary>
/// 核心网配置
/// </summary>
[JsonPropertyName("coreNetworkConfig")]
public string CoreNetworkConfig { get; set; } = string.Empty;
/// <summary>
/// IMS配置
/// </summary>
[JsonPropertyName("imsConfig")]
public string ImsConfig { get; set; } = string.Empty;
}
}