diff --git a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs index 80cfbbdd33..cbbf324e9d 100644 --- a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs @@ -3187,9 +3187,22 @@ namespace ICSharpCode.NRefactory.PrettyPrinter outputFormatter.Space(); return selectClause.Projection.AcceptVisitor(this, data); } - - public override object TrackedVisitQueryExpressionWhereClause(QueryExpressionWhereClause whereClause, object data) + + public override object TrackedVisitQueryExpressionSelectVBClause(QueryExpressionSelectVBClause queryExpressionSelectVBClause, object data) + { + outputFormatter.Space(); + outputFormatter.PrintToken(Tokens.Select); + outputFormatter.Space(); + foreach (var v in queryExpressionSelectVBClause.Variables) + { + v.AcceptVisitor(this, data); + } + return null; + } + + public override object TrackedVisitQueryExpressionWhereClause(QueryExpressionWhereClause whereClause, object data) { + outputFormatter.Space(); outputFormatter.PrintToken(Tokens.Where); outputFormatter.Space(); return whereClause.Condition.AcceptVisitor(this, data); diff --git a/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs b/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs index e73d4fcde0..b63df2ee0a 100644 --- a/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs +++ b/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs @@ -914,6 +914,13 @@ static bool InitStaticVariableHelper(Microsoft.VisualBasic.CompilerServices.Stat @"var xml = new XElement(""A"", ""\"""");"); } + + [Test] + public void LinqQueryWhereSelect() + { + TestStatement(@"Dim value = From value In values Where value = ""someValue"" Select value", + @"var value = from value in values where value == ""someValue"" select value;"); + } [Test] public void SD2_1500a() {