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

Commit 341b1aa

Browse files
committed
Add {TRUE} and {FALSE} OrmLite Variables to enable portability
1 parent ba44d37 commit 341b1aa

File tree

9 files changed

+21
-3
lines changed

9 files changed

+21
-3
lines changed

src/ServiceStack.OrmLite.Firebird/FirebirdOrmLiteDialectProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ public FirebirdOrmLiteDialectProvider(bool compactGuid)
5555
{ OrmLiteVariables.SystemUtc, "CURRENT_TIMESTAMP" },
5656
{ OrmLiteVariables.MaxText, "VARCHAR(1000)" },
5757
{ OrmLiteVariables.MaxTextUnicode, "VARCHAR(1000)" },
58+
{ OrmLiteVariables.True, SqlBool(true) },
59+
{ OrmLiteVariables.False, SqlBool(false) },
5860
};
5961
}
6062

src/ServiceStack.OrmLite.MySql/MySqlDialectProviderBase.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ public MySqlDialectProviderBase()
4848
{ OrmLiteVariables.SystemUtc, "CURRENT_TIMESTAMP" },
4949
{ OrmLiteVariables.MaxText, "LONGTEXT" },
5050
{ OrmLiteVariables.MaxTextUnicode, "LONGTEXT" },
51+
{ OrmLiteVariables.True, SqlBool(true) },
52+
{ OrmLiteVariables.False, SqlBool(false) },
5153
};
5254
}
5355

@@ -222,7 +224,9 @@ public override string SqlCast(object fieldOrValue, string castAs) =>
222224
castAs == Sql.VARCHAR
223225
? $"CAST({fieldOrValue} AS CHAR(1000))"
224226
: $"CAST({fieldOrValue} AS {castAs})";
225-
227+
228+
public override string SqlBool(bool value) => value ? "1" : "0";
229+
226230
protected DbConnection Unwrap(IDbConnection db)
227231
{
228232
return (DbConnection)db.ToDbConnection();

src/ServiceStack.OrmLite.Oracle/OracleOrmLiteDialectProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,8 @@ public OracleOrmLiteDialectProvider(bool compactGuid, bool quoteNames, string cl
118118
{ OrmLiteVariables.SystemUtc, "sys_extract_utc(systimestamp)" },
119119
{ OrmLiteVariables.MaxText, "VARCHAR2(2000)" },
120120
{ OrmLiteVariables.MaxTextUnicode, "NVARCHAR2(2000)" },
121+
{ OrmLiteVariables.True, SqlBool(true) },
122+
{ OrmLiteVariables.False, SqlBool(false) },
121123
};
122124
}
123125

src/ServiceStack.OrmLite.PostgreSQL/PostgreSQLDialectProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ public PostgreSqlDialectProvider()
6767
{ OrmLiteVariables.SystemUtc, "now() at time zone 'utc'" },
6868
{ OrmLiteVariables.MaxText, "TEXT" },
6969
{ OrmLiteVariables.MaxTextUnicode, "TEXT" },
70+
{ OrmLiteVariables.True, SqlBool(true) },
71+
{ OrmLiteVariables.False, SqlBool(false) },
7072
};
7173
}
7274

src/ServiceStack.OrmLite.SqlServer/SqlServerOrmLiteDialectProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ public SqlServerOrmLiteDialectProvider()
5151
{ OrmLiteVariables.SystemUtc, "SYSUTCDATETIME()" },
5252
{ OrmLiteVariables.MaxText, "VARCHAR(MAX)" },
5353
{ OrmLiteVariables.MaxTextUnicode, "NVARCHAR(MAX)" },
54+
{ OrmLiteVariables.True, SqlBool(true) },
55+
{ OrmLiteVariables.False, SqlBool(false) },
5456
};
5557
}
5658

src/ServiceStack.OrmLite.Sqlite/SqliteOrmLiteDialectProviderBase.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ protected SqliteOrmLiteDialectProviderBase()
3434
{ OrmLiteVariables.SystemUtc, "CURRENT_TIMESTAMP" },
3535
{ OrmLiteVariables.MaxText, "VARCHAR(1000000)" },
3636
{ OrmLiteVariables.MaxTextUnicode, "NVARCHAR(1000000)" },
37+
{ OrmLiteVariables.True, SqlBool(true) },
38+
{ OrmLiteVariables.False, SqlBool(false) },
3739
};
3840
}
3941

src/ServiceStack.OrmLite.VistaDB/VistaDbDialectProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ public VistaDbDialectProvider()
6767
{ OrmLiteVariables.SystemUtc, "GetDate()" },
6868
{ OrmLiteVariables.MaxText, "VARCHAR(MAX)" },
6969
{ OrmLiteVariables.MaxTextUnicode, "NVARCHAR(MAX)" },
70+
{ OrmLiteVariables.True, SqlBool(true) },
71+
{ OrmLiteVariables.False, SqlBool(false) },
7072
};
7173
}
7274

src/ServiceStack.OrmLite/OrmLiteVariables.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ public static class OrmLiteVariables
55
public const string SystemUtc = "{SYSTEM_UTC}";
66
public const string MaxText = "{MAX_TEXT}";
77
public const string MaxTextUnicode = "{NMAX_TEXT}";
8+
public const string True = "{TRUE}";
9+
public const string False = "{FALSE}";
810
}
911

1012
public static class Messages

tests/ServiceStack.OrmLite.Tests/Issues/DynamicResultsNamingStrategyTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ public class Menu : EntityBase<Menu>
3535

3636
public abstract class EntityBase<T> // : IEntity<T>
3737
{
38-
[Required, Default(typeof(bool), "0")]
38+
[Required, Default(typeof(bool), "{FALSE}")]
3939
public bool IsDeleted { get; set; }
40-
[Required, Default(typeof(bool), "1")]
40+
[Required, Default(typeof(bool), "{TRUE}")]
4141
public bool IsActive { get; set; } = true;
4242
public int? Position { get; set; }
4343
//public ulong RowVersion { get; set; }

0 commit comments

Comments
 (0)