C# 如何使用-替换“;在布景中?

C# 如何使用-替换“;在布景中?,c#,powershell,replace,C#,Powershell,Replace,我想通过我的C#使用PowerShell修改Active Directory属性。以下是我的PowerShell命令,可用于替换Active Directory属性: Set ADUser-Identity“kchnam”-替换{extensionAttribute2=“Neuer-Wert”} 如何将@{extensionAttribute2=“Neuer Wert”}添加到我的C#命令中 我的解决方案不起作用: Command setUser=new命令(“Set ADUser”); se

我想通过我的C#使用PowerShell修改Active Directory属性。以下是我的PowerShell命令,可用于替换Active Directory属性:

Set ADUser-Identity“kchnam”-替换{extensionAttribute2=“Neuer-Wert”}
如何将
@{extensionAttribute2=“Neuer Wert”}
添加到我的C#命令中

我的解决方案不起作用:

Command setUser=new命令(“Set ADUser”);
setUser.Parameters.Add(“标识”,aduser);
字符串testadd=“@{extensionAttribute2=“+quote+”Neuer-Wert“+quote+”}”;
setUser.Parameters.Add(“替换”,testadd);
在PowerShell中:

@{extensionAttribute2="Neuer Wert"}
表示
哈希表
文字,而不仅仅是
字符串
。因此,在C#中,您还必须创建一个
哈希表
对象:

new Hashtable{{"extensionAttribute2","Neuer Wert"}}

尽管如此,这并不完全等同于PowerShell,因为PowerShell使用不区分大小写的键比较器创建
哈希表。但是,很有可能,您可以使用实现
IDictionary
的任何集合,而不仅仅是
哈希表

哈希表testadd=new Hashtable{{{“extensionAttribute2”,“Neuer Wert”}是的,它正在工作!非常感谢:)@PetSerAl请补充这一点作为回答,最好是简短的解释。