【发布时间】:2010-09-30 18:19:14
【问题描述】:
我正在使用ManagementClass.GetStronglyTypedClassCode 来获取对 CodeTypeDeclaration 实例的引用。我想更改生成的类名,但此方法不允许这样做(据我所知)。我试图更改 CodeTypeDeclaration.Name 属性,但这不会更改构造函数名称等,因此 C# 编译器在编译类时会返回错误。我可以对班级进行简单的搜索/替换,但这似乎不可靠。有没有办法可靠地更改由 CodeTypeDeclaration 实例表示的 C# 类的名称?
代码不多,但这里是相关的sn-p(我用的是PowerShell):
$WmiClassName = 'Win32_Process'
$ClassName = 'MyProcess'
$WmiClass = New-Object `
System.Management.ManagementClass($WmiClassName)
$classCode = $WmiClass.GetStronglyTypedClassCode($true, $false)
$classCode.Name = $ClassName # This doesn't change constructor names
【问题讨论】:
标签: c# powershell code-generation wmi codedom