定义和设置具有单个元素的数组属性

本文关键字:元素 数组 属性 单个 设置 定义 | 更新日期: 2023-09-27 18:30:47

我有一个如下类,它用于 API,所以它必须采用这种格式

public class Command
{
    public string response_type { get; set; }
    public string text { get; set; }
    public Attachment[] attachments { get; set; } = new Attachment[] { new Attachment { } };
}
public class Attachment
{
    public string title { get; set; }
    public string title_link { get; set; }
    public string image_url { get; set; }
}

所以它是一个response_type、文本和附件数组。您可以看到我创建了附件数组并创建了一个空对象。

创建对象时,数组中将只有一个元素。

声明对象

时如何设置或添加到数组中,因为对象已在构造函数中创建

Command result = new Command()
{
    text = "Rebooting!",
    attachments[0] = ????
};

我错过了一些简单的东西,尝试了很多组合

定义和设置具有单个元素的数组属性

要添加到数组中,您需要在构造后执行此操作

Command result = new Command()
{
    text = "Rebooting!",
};
result.attachments = new Attachment[2] { result.attachments[0], new Attachment() };

如果您只想设置值(因为数组已经创建并且包含一个实例,您可以这样做

result.attachments[0] = new Attachment();

您可以使用数组初始值设定项,只显示一项:

Command result = new Command()
{
    text = "Rebooting!",
    attachments = new [] {new Attachment {...} }
};

作为旁注,大多数 .NET 命名标准以大写字母 (Attachments) 开头的属性名称