ExpandoObject使用

             //public class Users {
             //   public int Id { set; get; }
             //   public string UName { set; get; }
             //   public int UAge { set; get; }
             // }
            var userList = new List<Users>{ 
                new Users{Id=1,UName="A",UAge=21},
                new Users{Id=2,UName="B",UAge=21},
                new Users{Id=3,UName="C",UAge=21},
                new Users{Id=4,UName="D",UAge=21}
            };


            List<System.Dynamic.ExpandoObject> objList = new List<System.Dynamic.ExpandoObject>();

            int a = 10;
            while (a < 20)
            {
                dynamic obj = new System.Dynamic.ExpandoObject();
                obj.ID = a;
                obj.FirstName = "Henry" + a;
                obj.LastName = "Cui" + a;
                obj.Age = "age" + a;
                obj.Time = "time" + a;
                a++;
                objList.Add(obj);
                //objList.Count();
            }
            var temp1 = (from u in objList select u).ToList();

            var temp = (from u in userList select u).ToList();
            return new { Reslut = "succss", Rows = temp, RowsNew = temp1 };

 

转载于:https://www.cnblogs.com/panjinzhao/p/7699855.html

PowerShell中的`System.Dynamic.ExpandoObject`是一个动态对象,它允许在运行时动态地添加、删除和修改属性和方法。`ExpandoObject`实现了`IDictionary<string, object>`接口,因此可以通过字典的方式来访问其属性。 以下是一些关于`System.Dynamic.ExpandoObject`的关键点: 1. **动态属性添加**: 你可以在运行时向`ExpandoObject`添加新的属性,而不需要事先定义它们。 ```powershell $expando = New-Object System.Dynamic.ExpandoObject $expando | Add-Member -MemberType NoteProperty -Name Name -Value "John" $expando | Add-Member -MemberType NoteProperty -Name Age -Value 30 Write-Output $expando.Name # 输出: John Write-Output $expando.Age # 输出: 30 ``` 2. **动态方法添加**: 你也可以在运行时向`ExpandoObject`添加新的方法。 ```powershell $expando = New-Object System.Dynamic.ExpandoObject $expando | Add-Member -MemberType ScriptMethod -Name SayHello -Value { Write-Output "Hello, $this.Name!" } $expando.Name = "John" $expando.SayHello() # 输出: Hello, John! ``` 3. **作为字典使用**: 由于`ExpandoObject`实现了`IDictionary<string, object>`接口,你可以通过字典的方式来访问其属性。 ```powershell $expando = New-Object System.Dynamic.ExpandoObject $dict = [IDictionary[string, object]]$expando $dict["Name"] = "John" $dict["Age"] = 30 Write-Output $dict["Name"] # 输出: John Write-Output $dict["Age"] # 输出: 30 ``` `System.Dynamic.ExpandoObject`在需要动态对象操作的场景中非常有用,特别是当对象的结构在编译时未知或在运行时需要动态变化时。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值