gpt4 book ai didi

c# - 如何同时声明和填充集合?

转载 作者:太空宇宙 更新时间:2023-11-03 20:00:22 26 4
gpt4 key购买 nike

我正在尝试以下操作:

    public class ResultDTO
{
public int Id { get; set; }
public string Text { get; set; }
public int AnswerId { get; set; }
public string AnswerText { get; set; }
}

List<ResultDTO> result1 = new List<ResultDTO> () {
new ResultDTO () { Id:1, Text: "abc", AnswerId: "1", AnswerText: "Aab1" },
new ResultDTO () { Id:1, Text: "abc", AnswerId: "2", AnswerText: "Aab2" },
new ResultDTO () { Id:1, Text: "abc", AnswerId: "3", AnswerText: "Aab3" },
new ResultDTO () { Id:1, Text: "def", AnswerId: "4", AnswerText: "Aab4" },
new ResultDTO () { Id:1, Text: "def", AnswerId: "5", AnswerText: "Aab5" },
new ResultDTO () { Id:1, Text: "def", AnswerId: "6", AnswerText: "Aab6" }
}

这让我在 IDE 中出现许多语法错误。有人可以告诉我做错了什么吗?

最佳答案

这不是 JSon 对象和数组。可以使用 = 运算符分配属性。

List<ResultDTO> result1 = new List<ResultDTO> () {
new ResultDTO () { Id=1, Text= "abc", AnswerId= 1, AnswerText= "Aab1" },
....
}

我建议您创建具有属性参数的构造函数;

public class ResultDTO
{
public int Id { get; private set; }
public string Text { get; set; }
public int AnswerId { get; set; }
public string AnswerText { get; set; }

public ResultDTO(int id, string _text, int ansId, string ansText)
{
Id=id;
Text = _text;
AnswerId = ansId;
AnswerText = ansText;
}
}

然后像这样初始化列表。

List<ResultDTO> result1 = new List<ResultDTO> () {
new ResultDTO (1,"abc",1,"Aab1"),
new ResultDTO (1,"abc",2,"Aab2"),
new ResultDTO (1,"abc",3,"Aab3"),
....
}

当您将属性指定为只读时,这会给您带来一些好处。看上面的类我已经声明了Id属性公开可读并且不能在类外设置。

关于c# - 如何同时声明和填充集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29230006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com