更改生成的C#类名称

时间:2010-09-30 18:19:14

标签: c# powershell code-generation wmi codedom

我正在使用ManagementClass.GetStronglyTypedClassCode来获取对CodeTypeDeclaration实例的引用。我想更改生成的类名,这个方法不允许这样做(据我所知)。我试图更改CodeTypeDeclaration.Name属性,但这不会更改构造函数名称等,因此C#编译器在编译类时返回错误。我可以在课堂上进行简单的搜索/替换,但这似乎不可靠。有没有办法可靠地更改CodeTypeDeclaration实例所代表的C#类的名称?

代码不多,但这里是相关代码段(我使用的是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

1 个答案:

答案 0 :(得分:0)

我认为您可以通过枚举Members属性并更改Name类型成员的CodeConstructor属性来手动重命名构造函数

相关问题