C# 做一个临时的对象结构,并用linq查找

在C#中,可以使用匿名类型来创建一个临时的对象结构,并使用LINQ来查询这些对象。以下是一个简单的例子:

cs 复制代码
using System;
using System.Linq;
using System.Collections.Generic;
 
public class Program
{
    public static void Main()
    {
        // 创建一个匿名类型的集合
        var tempObjects = new List<object>
        {
            new { Name = "Alice", Age = 30 },
            new { Name = "Bob", Age = 25 },
            new { Name = "Charlie", Age = 35 }
        };
 
        // 使用LINQ查询
        var result = tempObjects.Where(o => o.GetType().GetProperty("Age").GetValue(o, null).ToString() == "30").FirstOrDefault();
 
        // 输出结果
        Console.WriteLine($"Name: {result.Name}, Age: {result.Age}");
    }
}

在这个例子中,我们创建了一个包含三个匿名对象的List<object>,每个对象都有Name和Age属性。然后我们使用LINQ的Where方法来查询年龄为30岁的对象,并使用FirstOrDefault来获取查询结果中的第一个对象。最后,我们输出这个对象的Name和Age属性。

相关推荐
m0_547486664 小时前
《JavaScript核心原理 》全套PPT课件2026
开发语言·javascript·ecmascript
MC皮蛋侠客4 小时前
Tauri 2.x 系列(五):调用系统 API——官方插件、Rust crate 与原生能力
开发语言·后端·rust
布莱克6055 小时前
软中断和硬中断的区别
开发语言·操作系统
whcyhhh6 小时前
头歌实践教学平台:数据科学与大数据技术导论(十二)
大数据·开发语言·python·数据清洗
lzhdim6 小时前
13、JavaScript事件循环机制 - JavaScript学习系列文章
开发语言·前端·javascript·学习·ecmascript
吴可可1236 小时前
多段线局部约束缩放实现
c#
zbyyd7 小时前
Linux 多线程:互斥锁 &amp; 信号量
linux·c语言·开发语言·网络
wuyk5557 小时前
从零吃透Modbus通信|第3章:STM32 Modbus RTU主机
服务器·开发语言·网络·数据结构·stm32·单片机·嵌入式硬件
one3128 小时前
高精度MEMS电容式倾角传感器:原理、结构与Python三维可视化
开发语言·python
程序员小八7778 小时前
Go 语言特性
开发语言·后端·golang