PHP我们可以使用以下代码从对象中删除一个属性及其值:
$foo->bar = "Something";
unset($foo->bar);
Run Code Online (Sandbox Code Playgroud)
我想用 C# 来做这个。
想象一下该对象是:
var a = new {foo = bar, one = "one"}
Run Code Online (Sandbox Code Playgroud)
我如何foo从对象中删除?
类型是在编译时定义的,因此不会删除属性,c# 中则不然。匿名类型就像您创建的类一样;只是这个名字对你隐藏了。
您最接近的答案是定义一个新类型,忽略您想要删除的属性:
var b = new { one = a.one };
Run Code Online (Sandbox Code Playgroud)