c# - 如何在列表List中使用两种类型
问题描述
我们可以List <T>
在类类型中使用两个不同类型的参数还是再添加一个参数?
例如:
public class ClassA
{
public int a {get;set;}
public int b {get;set;}
}
我需要列表中的更多属性而不编辑 ClassA
public string c {get;set;}
public List<ClassA, c> list = new List<ClassA, c>
我应该能够访问列表中的 c
item[0].a
item[0].b
item[0].c
解决方案
如果您使用的是最新的 C# 版本,则可以使用元组:
public List<(ClassA, string)> list = new List<(ClassA, string)>
您也可以为它们命名
public List<(ClassA a, string c)> list = new List<(ClassA a, string c)>
但是您不能直接访问 ClassA 中的任何内容,您必须使用第一个对象的名称。
推荐阅读
- openstack - Openstack Rocky 版本在检索实例和连接到 VM 时面临问题
- php - 隐藏输入未通过 Ajax 发送内容
- java - 选择帐户后,登录屏幕会无限期加载
- windows - 调用命令无法使用最新版本的 chromedriver 93 在本地或远程计算机上打开浏览器
- python - 从列表中获取 x,y,z 坐标
- sql - QLDB 中的行数有限
- mysql - 从多个表中选择多个列并且不填充空格
- c# - window.print() 页眉、页脚删除选项在 Blazor 中不起作用
- c# - 用于 Amazon SQS 的 MassTransit UseFormattingKey 方法
- sql - 如果 @variable 为空,则跳过 WHERE 条件