2009-04-13 8 views
0
CodeVariableDeclarationStatement hashTableParam = new CodeVariableDeclarationStatement(); 
hashTableParam.Name = "hastable"; 
hashTableParam.Type = new CodeTypeReference(typeof(System.Collections.Hashtable)); 
CodeMethodInvokeExpression invokeExp2 = 
    new CodeMethodInvokeExpression(new CodeVariableReferenceExpression(hashTableParam.Name), "add"); 
invokeExp2.Parameters.Add(new CodeArgumentReferenceExpression("key")); 
invokeExp2.Parameters.Add(new CodeArgumentReferenceExpression("value")); 
return hashTableParam; 

Ich muss den obigen Code in einer Methode verwenden, die CodeAssignStatement zurückgibt. Wie kann ich das tun?Wie kann ich eine CodeVariableDeclarationStatement in CodeAssignmentStatement konvertieren?

Antwort

0

Soweit ich das beurteilen kann, die einzigen vernünftigen CodeAssignStatement in den oben wäre so etwas wie (nicht getestet):

 CodeAssignStatement assign = new CodeAssignStatement(
      new CodeVariableReferenceExpression(hashTableParam.Name), 
      new CodeObjectCreateExpression(hashTableParam.Type)); 

jedoch diese Zuordnung (an dieser Stelle zurück) nicht enthält den Schlüssel/Wertschöpfung. Was genau versuchst du zu tun?

Verwandte Themen