2011-07-17 5 views
4

私はCodeTypeReferenceExpressionとともにCodeMethodInvokeExpressionを使用して、いくつかのタイプに電話をかけることができていますが、私は次のコード行への参照を作ることができるようにしたいと思います:C#のCodeDOMダブルタイプ・リファレンス

Process p = new Process(); 
p.StartInfo.FileName = "FilePath"; 

CodeVariableDeclarationStatement statement = new CodeVariableDeclarationStatement(typeof(System.Diagnostics.Process), "p", 
    new CodeObjectCreateExpression("System.Diagnostics.Process", 
    new CodeExpression[] { })); 

私は私の人生のためにライン「p.StartInfo.FileName = exFilePath」を生成する方法を見つけ出すことはできません - ここでは、私がこれまで持っているものです。

大変お手伝いをいたします。

new CodeAssignStatement(
    new CodePropertyReferenceExpression(
     new CodePropertyReferenceExpression(
       new CodeVariableReferenceExpression("p"), 
       "StartInfo"), 
     "FileName"), 
    new CodePrimitiveExpression("FilePath")) 

のようなものがすべき、 エヴァン

+0

なぜ '' CodeAssignStatement'](http://msdn.microsoft.com/en-us/library/system.codedom.codeassignstatement.aspx)で 'p.StartInfo.FileName = exFilePath'を生成しないのですか? – Vlad

+0

@vlad私はそれを考えましたが、その "p.startinfo.filename"部分を生成する方法を理解できません。 –

答えて

1

、ありがとうございました。

+0

これはまさに私が探していたものです。 CodePropertyReferenceExpression。私はこれを行って行く - 非常にありがとう –

+0

これは助けて欲しい。私はCodeDomにあまり経験がありません。 – Vlad