From 3e37fb24a93f51ce6c1b9002e15e55d6033e5009 Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Thu, 21 Jul 2011 23:04:51 +0200 Subject: [PATCH] fix output of object initializers --- ICSharpCode.NRefactory.VB/OutputVisitor/OutputVisitor.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ICSharpCode.NRefactory.VB/OutputVisitor/OutputVisitor.cs b/ICSharpCode.NRefactory.VB/OutputVisitor/OutputVisitor.cs index d359cb8973..b94dbdbbed 100644 --- a/ICSharpCode.NRefactory.VB/OutputVisitor/OutputVisitor.cs +++ b/ICSharpCode.NRefactory.VB/OutputVisitor/OutputVisitor.cs @@ -1705,6 +1705,11 @@ namespace ICSharpCode.NRefactory.VB WriteCommaSeparatedListInParenthesis(objectCreationExpression.Arguments, false); if (!objectCreationExpression.Initializer.IsNull) { Space(); + if (objectCreationExpression.Initializer.Elements.Any(x => x is FieldInitializerExpression)) + WriteKeyword("With"); + else + WriteKeyword("From"); + Space(); objectCreationExpression.Initializer.AcceptVisitor(this, data); } @@ -1870,7 +1875,7 @@ namespace ICSharpCode.NRefactory.VB { StartNode(fieldInitializerExpression); - if (fieldInitializerExpression.IsKey) { + if (fieldInitializerExpression.IsKey && fieldInitializerExpression.Parent is AnonymousObjectCreationExpression) { WriteKeyword("Key"); Space(); }