2009-02-24 87 views
9

我有一個使用CodeDom創建的屬性。我怎樣才能將它設置爲一個自動屬性,而不是添加CodeFieldReferenceExpressions對私人成員?C#CodeDom自動屬性

回答

11

IIRC,CodeDom根本沒有辦法表達這一點。自動實現的屬性只是編譯器糖,但由於它沒有(乾淨地)映射到所有語言,所以它不能完全適合CodeDom(此外,CodeDom需要更新)。

7

是的,你可以。

您可以使用CodeSnippetTypeMember類用於此目的。

例如:

 CodeTypeDeclaration newType = new CodeTypeDeclaration("TestType"); 
     CodeSnippetTypeMember snippet = new CodeSnippetTypeMember(); 

     snippet.Comments.Add(new CodeCommentStatement("this is integer property", true)); 
     snippet.Text="public int IntergerProperty { get; set; }"; 

     newType.Members.Add(snippet);