Skip to content

Commit 983beaf

Browse files
Merge pull request #502 from asherber/select-enumerable
Add Select overload with IEnumerable<string>
2 parents bad6733 + e5a8484 commit 983beaf

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

QueryBuilder.Tests/SelectTests.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using SqlKata.Extensions;
33
using SqlKata.Tests.Infrastructure;
44
using System;
5+
using System.Collections.Generic;
56
using Xunit;
67

78
namespace SqlKata.Tests
@@ -21,6 +22,19 @@ public void BasicSelect()
2122
Assert.Equal("SELECT \"id\", \"name\" FROM \"users\"", c[EngineCodes.Oracle]);
2223
}
2324

25+
[Fact]
26+
public void BasicSelectEnumerable()
27+
{
28+
var q = new Query().From("users").Select(new List<string>() { "id", "name" });
29+
var c = Compile(q);
30+
31+
Assert.Equal("SELECT [id], [name] FROM [users]", c[EngineCodes.SqlServer]);
32+
Assert.Equal("SELECT `id`, `name` FROM `users`", c[EngineCodes.MySql]);
33+
Assert.Equal("SELECT \"id\", \"name\" FROM \"users\"", c[EngineCodes.PostgreSql]);
34+
Assert.Equal("SELECT \"ID\", \"NAME\" FROM \"USERS\"", c[EngineCodes.Firebird]);
35+
Assert.Equal("SELECT \"id\", \"name\" FROM \"users\"", c[EngineCodes.Oracle]);
36+
}
37+
2438
[Fact]
2539
public void BasicSelectWhereBindingIsEmptyOrNull()
2640
{

QueryBuilder/Query.Select.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.Collections.Generic;
23
using System.Linq;
34

45
namespace SqlKata
@@ -7,6 +8,11 @@ public partial class Query
78
{
89

910
public Query Select(params string[] columns)
11+
{
12+
return Select(columns.AsEnumerable());
13+
}
14+
15+
public Query Select(IEnumerable<string> columns)
1016
{
1117
Method = "select";
1218

0 commit comments

Comments
 (0)