gpt4 book ai didi

c# - 我可以将未知类型的 List<> 添加到类中吗?

转载 作者:太空宇宙 更新时间:2023-11-03 10:33:09 25 4
gpt4 key购买 nike

我有一个类定义为:

public class ReportObjectInformation
{
public string tableName { get; set; }
public int progressBarValue { get; set; }
public int rowCount { get; set; }
public bool canConnect { get; set; }
public int index { get; set; }
public string summaryFile { get; set; }
public string reportFile { get; set; }
public string errorFile { get; set; }
}

目前我的代码中有七个不同的对象列表。有没有办法我可以做类似的事情:

public class ReportObjectInformation
{
public string tableName { get; set; }
public int progressBarValue { get; set; }
public int rowCount { get; set; }
public bool canConnect { get; set; }
public int index { get; set; }
public string summaryFile { get; set; }
public string reportFile { get; set; }
public string errorFile { get; set; }
public List<> listOne { get; set; } // add this
public List<> listTwo { get; set; } // add this
}

然后在我的代码中将列表设置为我的七种预定义列表类型之一?

我的其他列表之一由此类组成:

class parameters
{
public string firstName{ get; set; }
public string lastName{ get; set; }
public string address{ get; set; }
public string city{ get; set; }
public string state { get; set; }
public string country{ get; set; }
public string active_flag { get; set; }
}

我在我的代码中创建为:

List<parameters> parm_list = new List<parameters>();

parm_list 填充有数据。现在我想将该列表添加到我正在创建的其他对象中。在我的代码中的其他时候,我想将列表设置为我的其他类型之一,但现在我该怎么做呢?这可能吗?

ReportObjectInformation reportObject = new ReportObjectInformation();
reportObject.tableName = "UserInformation";
reportObject.listOne = parm_list;
reportObject.listTwo = someother_list;

最佳答案

如果您可以保证 ReportObjectInformation 的特定实例将与给定类型的列表一起工作,您可以这样做:

public class ReportObjectInformation<TOne, TTwo>
{
public string tableName { get; set; }
public int progressBarValue { get; set; }
public int rowCount { get; set; }
public bool canConnect { get; set; }
public int index { get; set; }
public string summaryFile { get; set; }
public string reportFile { get; set; }
public string errorFile { get; set; }
public List<TOne> listOne { get; set; }
public List<TTwo> listTwo { get; set; }
}

它允许您指定希望 ReportObjectInformation 对象列表使用的类型。

关于c# - 我可以将未知类型的 List<> 添加到类中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29019074/

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