首页 > 解决方案 > 获取字典实例的特定部分

问题描述

我需要帮助来转换字典实例的特定部分,例如我有这个模型实例

public class MyModel
{
  public int id {get;set;}
  public List<ClassC> classc {get; set;}
  public Dictionary<ClassA,ClassB> {get; set;}
}

在这个 MyModel 实例上,我需要删除 ClassA 并将字典实例中的 ClassB 转换为列表,我会得到这个结果。有没有直接的方法可以做到这一点,或者我真的需要提取每条记录并将每条记录转移到新的模型类?

public class newMyModel
{
  public int id {get;set;}
  public List<ClassC> classc {get;set;}
  public List<ClassB> {get; set;}
}

标签: c#linq

解决方案


您可以定义newMyModel将接受的构造函数作为其类型的参数对象MyModel

public newMyModel(MyModel oldModel)
{
  this.id = oldModel.id;
  this.classc = oldModel.classc;
  this.classb = oldModel.dict.Values.ToList();
}

我假设class中的Dictionary字段是 named并且in是 named 。MyModeldictList<ClassB>newMyModelclassb


推荐阅读