c# - 充当列表管理器(包含列表的列表)以减少样板代码的抽象类?

标签 c# list

假设我有一个包含两个列表(Email 和 PhoneDetails)的 Person 类,有些人每个都有不止一个。

PhoneDetails 有变量,例如:Number、Provider、PlanName...和 ​​Email 类似。

public class Person
{
    private String _FirstName;
    private String _LastName;
    private DateTime? _DateOfBirth = null;
    private List<Email> _Email = new List<Email>( );
    private List<PhoneDetails> _PhoneDet = new List<PhoneDetails>( );
}

我没有为每一个编写添加、查找、插入...,而是想出一种方法来创建列表管理器抽象类(或其他类),这样我就不必制作所有样板文件代码,但仍然可以以半控制的方式管理列表(如 Person 类中的权限)?

我确定 List<List<object>> ListMgr = new List<List<object>>();是一个开始,但以我目前的技能水平,这对我来说太令人生畏了。

我知道这超出了我的范围,因为我刚开始,但我在任何地方都找不到这样的东西,因为我使用了很多列表,我想我应该把它放在这里。只是不确定 Public 是否是最好的方式...

谢谢。

最佳答案

你为什么不这样做呢

public class ListManager<A, B, C, D> : Tuple<List<A>, List<B>, List<C>, List<D>>
{}

这当然是一种强类型方式,但在开始之前您必须知道所有列表及其类型

关于c# - 充当列表管理器(包含列表的列表)以减少样板代码的抽象类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21721160/

相关文章:

c# - 查找图像上的区域 - 自动旋转图像 OpenCv

javascript - 无需替换即可采样的别名方法的有效版本/替代方法

c# - 禁止对 List<T> 公开添加和删除

c# - C# 有什么可以与 Python 的列表推导相媲美的吗?

list - 从 R 中的 glm 中提取系数

c# - 使用方法 'mysql_native_password'失败

c# - 通过 wpf 中的内容呈现器将公共(public)字符串属性绑定(bind)到 TextBox 文本

c# - 将编辑的 html 文件保存到特定文件夹

c# - 如何逃避正斜杠?

python - 如何从选定列表中选择一个项目?