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属性。

相关推荐
ShineWinsu3 小时前
对于C++:继承的解析—上
开发语言·数据结构·c++·算法·面试·笔试·继承
小付同学呀3 小时前
C语言学习(五)——输入/输出
c语言·开发语言·学习
左手厨刀右手茼蒿4 小时前
Flutter for OpenHarmony: Flutter 三方库 hashlib 为鸿蒙应用提供军用级加密哈希算法支持(安全数据完整性卫士)
安全·flutter·华为·c#·哈希算法·linq·harmonyos
梦幻精灵_cq4 小时前
学C之路:不可或缺的main()主函数框架(Learn-C 1st)
c语言·开发语言
消失的旧时光-19434 小时前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
福大大架构师每日一题5 小时前
go-zero v1.10.0发布!全面支持Go 1.23、MCP SDK迁移、性能与稳定性双提升
开发语言·后端·golang
五阿哥永琪6 小时前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
逻极6 小时前
pytest 入门指南:Python 测试框架从零到一(2025 实战版)
开发语言·python·pytest
你的冰西瓜6 小时前
C++ STL算法——排序和相关操作
开发语言·c++·算法·stl
大空大地20267 小时前
面向对象编程
c#