从C#中的动态对象中删除属性及其值

时间:2019-04-14 06:34:53

标签: c# asp.net object

PHP中,我们可以使用以下代码从对象中删除一个属性及其值:

$foo->bar = "Something";
unset($foo->bar);

我想用C#做到这一点。

想象一下该对象是:

var a = new {foo = bar, one = "one"}

如何从对象中删除foo

1 个答案:

答案 0 :(得分:4)

类型是在编译时定义的,因此不会删除属性,在c#中不会删除。匿名类型就像您创建的类一样。只是这个名字对您隐藏了。

与答案最接近的是定义一个新类型,该类型将忽略要删除的属性:

var b = new { one = a.one };