c# - 如何确保列表中对象的自定义属性复制到 C# 中的新列表?
问题描述
我正在尝试将列表的子集复制到新列表,但似乎无法复制自定义类属性。
例如,下面我有一个带有 int、bool 和 Basement 属性的 House 类。地下室属性是由一个双。当我获得 List AllHouses 属性的房屋列表时,所有属性都已填满。但是,当我将 AllHouses 列表复制到 SubjectHouses 列表(使用 lambda 语句仅选择 IsSubjectHouse == true 的房屋)时,MLSNumber 和 IsSubjectHouse 属性将复制,但 List 中的每个对象都有一个 null HouseBasement 属性。
看起来应该很简单,但是我尝试了很多事情并以多种方式进行了搜索,但似乎无法弄清楚我做错了什么。任何指针将不胜感激。下面是我正在使用的代码的精简版本,希望能为我上面写的内容提供一些上下文。
public class House
{
public int MLSNumber { get; set; }
public bool IsSubjectHouse { get; set; }
public Basement HouseBasement { get; set; }
}
public class Basement
{
public double SqFt { get; set; }
}
public ViewSubjectHouseViewModel()
{
//This list has all properties
List<House> AllHouses = GetHouseList();
//This list does not bring over the Basement property
List<House> SubjectHouses = AllHouses.FindAll(house => house.IsSubjectHouse == true);
}
解决方案
推荐阅读
- sql - Count(*) 与 Count(id) 速度
- python - 意外的标记 '
' 在 if 块中的语句之后 - javascript - “窗口”未在 Java 中为 Selenium 定义 ScriptEngine
- javascript - 将一组新的 JavaScript 文件组合到 Rails 应用程序中?
- python - Tensorflow,大图推理——内存不足
- scala - 如何在akka scala中连接两个表单数据?
- docker - 如何在 docker swarm 或 kubernetes 中进行 ibmmq 复制?
- angular - mat 自动完成非异步数据
- python - Django 文章文本无法突出显示或链接
- node.js - 当前 URL 字符串解析器在 mongo db 和 nodejs 中已弃用