Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit f70b658

Browse files
committed
Deprecate all API's which inject a Typed SqlExpression<T> lambda, pass in the SqlExpression<T> instead
In future release these will be moved under a ServiceStack.OrmLite.Legacy namespace to remove them from the default namespace which will reduce intelli-sense confusion.
1 parent aa952a9 commit f70b658

11 files changed

+36
-0
lines changed

src/ServiceStack.OrmLite/Async/ReadExpressionCommandExtensionsAsync.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,15 @@ namespace ServiceStack.OrmLite
1414
{
1515
internal static class ReadExpressionCommandExtensionsAsync
1616
{
17+
[Obsolete("Use db.SelectAsync(db.From<T>())")]
1718
internal static Task<List<T>> SelectAsync<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token)
1819
{
1920
var q = dbCmd.GetDialectProvider().SqlExpression<T>();
2021
var sql = expression(q).SelectInto<T>();
2122
return dbCmd.ExprConvertToListAsync<T>(sql, q.Params, token);
2223
}
2324

25+
[Obsolete("Use db.SelectAsync(db.From<T>())")]
2426
internal static Task<List<Into>> SelectAsync<Into, From>(this IDbCommand dbCmd, Func<SqlExpression<From>, SqlExpression<From>> expression, CancellationToken token)
2527
{
2628
var q = dbCmd.GetDialectProvider().SqlExpression<From>();
@@ -48,6 +50,7 @@ internal static Task<List<T>> SelectAsync<T>(this IDbCommand dbCmd, Expression<F
4850
return dbCmd.ExprConvertToListAsync<T>(sql, q.Params, token);
4951
}
5052

53+
[Obsolete("Use db.SingleAsync(db.From<T>())")]
5154
internal static Task<T> SingleAsync<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token)
5255
{
5356
var expr = dbCmd.GetDialectProvider().SqlExpression<T>();
@@ -92,6 +95,7 @@ internal static Task<long> CountAsync<T>(this IDbCommand dbCmd, CancellationToke
9295
return GetCountAsync(dbCmd, sql, q.Params, token);
9396
}
9497

98+
[Obsolete("Use db.CountAsync(db.From<T>())")]
9599
internal static Task<long> CountAsync<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token)
96100
{
97101
var q = dbCmd.GetDialectProvider().SqlExpression<T>();
@@ -129,6 +133,7 @@ internal static Task<long> RowCountAsync(this IDbCommand dbCmd, string sql, Canc
129133
return dbCmd.ScalarAsync<long>("SELECT COUNT(*) FROM ({0}) AS COUNT".Fmt(sql), token);
130134
}
131135

136+
[Obsolete("Use db.LoadSelectAsync(db.From<T>())")]
132137
internal static Task<List<T>> LoadSelectAsync<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression, string[] include = null, CancellationToken token = default(CancellationToken))
133138
{
134139
var expr = dbCmd.GetDialectProvider().SqlExpression<T>();

src/ServiceStack.OrmLite/Async/WriteExpressionCommandExtensionsAsync.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ namespace ServiceStack.OrmLite
99
{
1010
internal static class WriteExpressionCommandExtensionsAsync
1111
{
12+
[Obsolete("Use db.UpdateOnlyAsync(model, db.From<T>())")]
1213
internal static Task<int> UpdateOnlyAsync<T>(this IDbCommand dbCmd, T model, Func<SqlExpression<T>, SqlExpression<T>> onlyFields, CancellationToken token)
1314
{
1415
return dbCmd.UpdateOnlyAsync(model, onlyFields(dbCmd.GetDialectProvider().SqlExpression<T>()), token);
@@ -77,6 +78,7 @@ internal static Task<int> UpdateFmtAsync(this IDbCommand dbCmd, string table, st
7778
return dbCmd.ExecuteSqlAsync(sql.ToString(), token);
7879
}
7980

81+
[Obsolete("Use db.InsertOnlyAsync(obj, db.From<T>())")]
8082
internal static Task InsertOnlyAsync<T>(this IDbCommand dbCmd, T obj, Func<SqlExpression<T>, SqlExpression<T>> onlyFields, CancellationToken token)
8183
{
8284
return dbCmd.InsertOnlyAsync(obj, onlyFields(dbCmd.GetDialectProvider().SqlExpression<T>()), token);
@@ -98,6 +100,7 @@ internal static Task<int> DeleteAsync<T>(this IDbCommand dbCmd, Expression<Func<
98100
return dbCmd.DeleteAsync(q, token);
99101
}
100102

103+
[Obsolete("Use db.DeleteAsync(db.From<T>())")]
101104
internal static Task<int> DeleteAsync<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> where, CancellationToken token)
102105
{
103106
return dbCmd.DeleteAsync(where(dbCmd.GetDialectProvider().SqlExpression<T>()), token);

src/ServiceStack.OrmLite/Expressions/ReadExpressionCommandExtensions.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ namespace ServiceStack.OrmLite
99
{
1010
internal static class ReadExpressionCommandExtensions
1111
{
12+
[Obsolete("Use db.Select(db.From<T>())")]
1213
internal static List<T> Select<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression)
1314
{
1415
var q = dbCmd.GetDialectProvider().SqlExpression<T>();
@@ -17,6 +18,7 @@ internal static List<T> Select<T>(this IDbCommand dbCmd, Func<SqlExpression<T>,
1718
return dbCmd.ExprConvertToList<T>(sql, q.Params, onlyFields: q.OnlyFields);
1819
}
1920

21+
[Obsolete("Use db.Select<Into,From>(db.From<From>())")]
2022
internal static List<Into> Select<Into, From>(this IDbCommand dbCmd, Func<SqlExpression<From>, SqlExpression<From>> expression)
2123
{
2224
var q = dbCmd.GetDialectProvider().SqlExpression<From>();
@@ -46,6 +48,7 @@ internal static List<T> Select<T>(this IDbCommand dbCmd, Expression<Func<T, bool
4648
return dbCmd.ExprConvertToList<T>(sql, q.Params);
4749
}
4850

51+
[Obsolete("Use db.Single(db.From<T>())")]
4952
internal static T Single<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression)
5053
{
5154
var q = dbCmd.GetDialectProvider().SqlExpression<T>();
@@ -96,6 +99,7 @@ internal static long Count<T>(this IDbCommand dbCmd)
9699
return GetCount(dbCmd, sql, q.Params);
97100
}
98101

102+
[Obsolete("Use db.Count(db.From<T>())")]
99103
internal static long Count<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression)
100104
{
101105
var q = dbCmd.GetDialectProvider().SqlExpression<T>();
@@ -139,6 +143,7 @@ internal static long RowCount(this IDbCommand dbCmd, string sql)
139143
return dbCmd.Scalar<long>(dbCmd.GetDialectProvider().ToRowCountStatement(sql));
140144
}
141145

146+
[Obsolete("Use db.LoadSelect(db.From<T>())")]
142147
internal static List<T> LoadSelect<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> expression, IEnumerable<string> include = null)
143148
{
144149
var expr = dbCmd.GetDialectProvider().SqlExpression<T>();

src/ServiceStack.OrmLite/Expressions/WriteExpressionCommandExtensions.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ namespace ServiceStack.OrmLite
99
{
1010
internal static class WriteExpressionCommandExtensions
1111
{
12+
[Obsolete("Use db.UpdateOnly(model, db.From<T>())")]
1213
public static int UpdateOnly<T>(this IDbCommand dbCmd, T model, Func<SqlExpression<T>, SqlExpression<T>> onlyFields)
1314
{
1415
return dbCmd.UpdateOnly(model, onlyFields(dbCmd.GetDialectProvider().SqlExpression<T>()));
@@ -137,6 +138,7 @@ internal static StringBuilder UpdateFmtSql(IOrmLiteDialectProvider dialectProvid
137138
return sql;
138139
}
139140

141+
[Obsolete("Use db.InsertOnly(obj, db.From<T>())")]
140142
public static void InsertOnly<T>(this IDbCommand dbCmd, T obj, Func<SqlExpression<T>, SqlExpression<T>> onlyFields)
141143
{
142144
dbCmd.InsertOnly(obj, onlyFields(dbCmd.GetDialectProvider().SqlExpression<T>()));
@@ -158,6 +160,7 @@ public static int Delete<T>(this IDbCommand dbCmd, Expression<Func<T, bool>> whe
158160
return dbCmd.Delete(ev);
159161
}
160162

163+
[Obsolete("Use db.Delete(db.From<T>())")]
161164
public static int Delete<T>(this IDbCommand dbCmd, Func<SqlExpression<T>, SqlExpression<T>> where)
162165
{
163166
return dbCmd.Delete(where(dbCmd.GetDialectProvider().SqlExpression<T>()));

src/ServiceStack.OrmLite/OrmLiteReadApi.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -440,6 +440,7 @@ public static bool Exists<T>(this IDbConnection dbConn, Expression<Func<T, bool>
440440
/// Returns true if the Query returns any records that match the SqlExpression lambda, E.g:
441441
/// <para>db.Exists&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &lt; 50))</para>
442442
/// </summary>
443+
[Obsolete("Use db.Exists(db.From<T>())")]
443444
public static bool Exists<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression)
444445
{
445446
return dbConn.Exec(dbCmd =>

src/ServiceStack.OrmLite/OrmLiteReadApiAsync.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -423,6 +423,7 @@ public static Task<Dictionary<K, V>> DictionaryFmtAsync<K, V>(this IDbConnection
423423
/// Returns true if the Query returns any records that match the SqlExpression lambda, E.g:
424424
/// <para>db.Exists&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &lt; 50))</para>
425425
/// </summary>
426+
[Obsolete("Use db.ExistsAsync(db.From<T>())")]
426427
public static Task<bool> ExistsAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token = default(CancellationToken))
427428
{
428429
return dbConn.Exec(dbCmd =>

src/ServiceStack.OrmLite/OrmLiteReadExpressionsApi.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ public static List<T> Select<T>(this IDbConnection dbConn, Expression<Func<T, bo
117117
/// Returns results from using an SqlExpression lambda. E.g:
118118
/// <para>db.Select&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &gt; 40))</para>
119119
/// </summary>
120+
[Obsolete("Use db.Select(db.From<T>())")]
120121
public static List<T> Select<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression)
121122
{
122123
return dbConn.Exec(dbCmd => dbCmd.Select(expression));
@@ -142,6 +143,7 @@ public static List<Into> Select<Into, From>(this IDbConnection dbConn, SqlExpres
142143
/// <summary>
143144
/// Project results from a number of joined tables into a different model
144145
/// </summary>
146+
[Obsolete("Use db.Select<Into, From>(db.From<T>())")]
145147
public static List<Into> Select<Into, From>(this IDbConnection dbConn, Func<SqlExpression<From>, SqlExpression<From>> expression)
146148
{
147149
return dbConn.Exec(dbCmd => dbCmd.Select<Into, From>(expression));
@@ -175,6 +177,7 @@ public static T Single<T>(this IDbConnection dbConn, Expression<Func<T, bool>> p
175177
/// Returns a single result from using an SqlExpression lambda. E.g:
176178
/// <para>db.Single&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age == 42))</para>
177179
/// </summary>
180+
[Obsolete("Use db.Single(db.From<T>())")]
178181
public static T Single<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression)
179182
{
180183
return dbConn.Exec(dbCmd => dbCmd.Single(expression));
@@ -230,6 +233,7 @@ public static long Count<T>(this IDbConnection dbConn, Expression<Func<T, bool>>
230233
/// Returns the count of rows that match the SqlExpression lambda, E.g:
231234
/// <para>db.Count&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &lt; 50))</para>
232235
/// </summary>
236+
[Obsolete("Use db.Count(db.From<T>())")]
233237
public static long Count<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression)
234238
{
235239
return dbConn.Exec(dbCmd => dbCmd.Count(expression));
@@ -288,6 +292,7 @@ public static List<T> LoadSelect<T>(this IDbConnection dbConn, Expression<Func<T
288292
/// Returns results with references from using an SqlExpression lambda. E.g:
289293
/// <para>db.LoadSelect&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &gt; 40))</para>
290294
/// </summary>
295+
[Obsolete("Use db.LoadSelect(db.From<T>())")]
291296
public static List<T> LoadSelect<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, IEnumerable<string> include = null)
292297
{
293298
return dbConn.Exec(dbCmd => dbCmd.LoadSelect(expression, include));
@@ -297,6 +302,7 @@ public static List<T> LoadSelect<T>(this IDbConnection dbConn, Func<SqlExpressio
297302
/// Returns results with references from using an SqlExpression lambda. E.g:
298303
/// <para>db.LoadSelect&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &gt; 40), include: x => new { x.PrimaryAddress })</para>
299304
/// </summary>
305+
[Obsolete("Use db.LoadSelect(db.From<T>())")]
300306
public static List<T> LoadSelect<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, Func<T, object> include)
301307
{
302308
return dbConn.Exec(dbCmd => dbCmd.LoadSelect(expression, include(typeof(T).CreateInstance<T>()).GetType().AllAnonFields()));

src/ServiceStack.OrmLite/OrmLiteReadExpressionsApiAsync.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ public static class OrmLiteReadExpressionsApiAsync
2626
/// Returns results from using an SqlExpression lambda. E.g:
2727
/// <para>db.Select&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &gt; 40))</para>
2828
/// </summary>
29+
[Obsolete("Use db.SelectAsync(db.From<T>())")]
2930
public static Task<List<T>> SelectAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token = default(CancellationToken))
3031
{
3132
return dbConn.Exec(dbCmd => dbCmd.SelectAsync(expression, token));
@@ -51,6 +52,7 @@ public static class OrmLiteReadExpressionsApiAsync
5152
/// <summary>
5253
/// Project results from a number of joined tables into a different model
5354
/// </summary>
55+
[Obsolete("Use db.SelectAsync<Into, From>(db.From<T>())")]
5456
public static Task<List<Into>> SelectAsync<Into, From>(this IDbConnection dbConn, Func<SqlExpression<From>, SqlExpression<From>> expression, CancellationToken token = default(CancellationToken))
5557
{
5658
return dbConn.Exec(dbCmd => dbCmd.SelectAsync<Into, From>(expression, token));
@@ -78,6 +80,7 @@ public static class OrmLiteReadExpressionsApiAsync
7880
/// Returns a single result from using an SqlExpression lambda. E.g:
7981
/// <para>db.Single&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age == 42))</para>
8082
/// </summary>
83+
[Obsolete("Use db.SingleAsync(db.From<T>())")]
8184
public static Task<T> SingleAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token = default(CancellationToken))
8285
{
8386
return dbConn.Exec(dbCmd => dbCmd.SingleAsync(expression, token));
@@ -133,6 +136,7 @@ public static Task<TKey> ScalarAsync<T, TKey>(this IDbConnection dbConn,
133136
/// Returns the count of rows that match the SqlExpression lambda, E.g:
134137
/// <para>db.Count&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &lt; 50))</para>
135138
/// </summary>
139+
[Obsolete("Use db.CountAsync(db.From<T>())")]
136140
public static Task<long> CountAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, CancellationToken token = default(CancellationToken))
137141
{
138142
return dbConn.Exec(dbCmd => dbCmd.CountAsync(expression, token));
@@ -182,6 +186,7 @@ public static Task<TKey> ScalarAsync<T, TKey>(this IDbConnection dbConn,
182186
/// Returns results with references from using an SqlExpression lambda. E.g:
183187
/// <para>db.LoadSelectAsync&lt;Person&gt;(q =&gt; q.Where(x =&gt; x.Age &gt; 40))</para>
184188
/// </summary>
189+
[Obsolete("Use db.LoadSelectAsync(db.From<T>())")]
185190
public static Task<List<T>> LoadSelectAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> expression, string[] include = null, CancellationToken token = default(CancellationToken))
186191
{
187192
return dbConn.Exec(dbCmd => dbCmd.LoadSelectAsync(expression, include, token));

src/ServiceStack.OrmLite/OrmLiteWriteExpressionsApi.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ public static class OrmLiteWriteExpressionsApi
1717
/// db.UpdateOnly(new Person { FirstName = "JJ", LastName = "Hendo" }, ev => ev.Update(p => p.FirstName));
1818
/// UPDATE "Person" SET "FirstName" = 'JJ'
1919
/// </summary>
20+
[Obsolete("Use db.UpdateOnly(model, db.From<T>())")]
2021
public static int UpdateOnly<T>(this IDbConnection dbConn, T model, Func<SqlExpression<T>, SqlExpression<T>> onlyFields)
2122
{
2223
return dbConn.Exec(dbCmd => dbCmd.UpdateOnly(model, onlyFields));
@@ -114,6 +115,7 @@ public static int UpdateFmt(this IDbConnection dbConn, string table = null, stri
114115
/// Insert only fields in POCO specified by the SqlExpression lambda. E.g:
115116
/// <para>db.InsertOnly(new Person { FirstName = "Amy", Age = 27 }, q =&gt; q.Insert(p =&gt; new { p.FirstName, p.Age }))</para>
116117
/// </summary>
118+
[Obsolete("Use db.InsertOnly(obj, db.From<T>())")]
117119
public static void InsertOnly<T>(this IDbConnection dbConn, T obj, Func<SqlExpression<T>, SqlExpression<T>> onlyFields)
118120
{
119121
dbConn.Exec(dbCmd => dbCmd.InsertOnly(obj, onlyFields));
@@ -147,6 +149,7 @@ public static int Delete<T>(this IDbConnection dbConn, Expression<Func<T, bool>>
147149
/// db.Delete&lt;Person&gt;(ev => ev.Where(p => p.Age == 27));
148150
/// DELETE FROM "Person" WHERE ("Age" = 27)
149151
/// </summary>
152+
[Obsolete("Use db.Delete(db.From<T>())")]
150153
public static int Delete<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> where)
151154
{
152155
return dbConn.Exec(dbCmd => dbCmd.Delete(where));

src/ServiceStack.OrmLite/OrmLiteWriteExpressionsApiAsync.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ public static class OrmLiteWriteExpressionsApiAsync
2020
/// db.UpdateOnly(new Person { FirstName = "JJ", LastName = "Hendo" }, ev => ev.Update(p => p.FirstName));
2121
/// UPDATE "Person" SET "FirstName" = 'JJ'
2222
/// </summary>
23+
[Obsolete("Use db.UpdateOnlyAsync(model, db.From<T>())")]
2324
public static Task<int> UpdateOnlyAsync<T>(this IDbConnection dbConn, T model, Func<SqlExpression<T>, SqlExpression<T>> onlyFields, CancellationToken token = default(CancellationToken))
2425
{
2526
return dbConn.Exec(dbCmd => dbCmd.UpdateOnlyAsync(model, onlyFields, token));
@@ -118,6 +119,7 @@ public static Task<int> UpdateOnlyAsync<T, TKey>(this IDbConnection dbConn, T ob
118119
/// Insert only fields in POCO specified by the SqlExpression lambda. E.g:
119120
/// <para>db.InsertOnly(new Person { FirstName = "Amy", Age = 27 }, q =&gt; q.Insert(p =&gt; new { p.FirstName, p.Age }))</para>
120121
/// </summary>
122+
[Obsolete("Use db.InsertOnlyAsync(obj, db.From<T>())")]
121123
public static Task InsertOnlyAsync<T>(this IDbConnection dbConn, T obj, Func<SqlExpression<T>, SqlExpression<T>> onlyFields, CancellationToken token = default(CancellationToken))
122124
{
123125
return dbConn.Exec(dbCmd => dbCmd.InsertOnlyAsync(obj, onlyFields, token));
@@ -151,6 +153,7 @@ public static Task<int> UpdateOnlyAsync<T, TKey>(this IDbConnection dbConn, T ob
151153
/// db.Delete&lt;Person&gt;(ev => ev.Where(p => p.Age == 27));
152154
/// DELETE FROM "Person" WHERE ("Age" = 27)
153155
/// </summary>
156+
[Obsolete("Use db.DeleteAsync(db.From<T>())")]
154157
public static Task<int> DeleteAsync<T>(this IDbConnection dbConn, Func<SqlExpression<T>, SqlExpression<T>> where, CancellationToken token = default(CancellationToken))
155158
{
156159
return dbConn.Exec(dbCmd => dbCmd.DeleteAsync(where, token));

0 commit comments

Comments
 (0)