diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-05-01 21:46:08 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-05-01 21:46:08 -0400 |
| commit | 311dd50eb7ec777a055755c3791b115fa2c0d762 (patch) | |
| tree | 3490fb39233d7b13373f4e1febd3ddb02efc1386 /MediaBrowser.Server.Implementations/Persistence | |
| parent | 4ddde2cdc2ad3a951120853825df9f3588bc36e4 (diff) | |
support more filters at db level
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs index 6afdb8d9f..87b3bffe4 100644 --- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs +++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs @@ -2071,6 +2071,30 @@ namespace MediaBrowser.Server.Implementations.Persistence } cmd.Parameters.Add(cmd, "@NameContains", DbType.String).Value = "%" + query.NameContains + "%"; } + if (!string.IsNullOrWhiteSpace(query.NameStartsWith)) + { + if (_config.Configuration.SchemaVersion >= 66) + { + whereClauses.Add("CleanName like @NameStartsWith"); + } + else + { + whereClauses.Add("Name like @NameStartsWith"); + } + cmd.Parameters.Add(cmd, "@NameStartsWith", DbType.String).Value = query.NameStartsWith + "%"; + } + if (!string.IsNullOrWhiteSpace(query.NameStartsWithOrGreater)) + { + whereClauses.Add("SortName >= @NameStartsWithOrGreater"); + // lowercase this because SortName is stored as lowercase + cmd.Parameters.Add(cmd, "@NameStartsWithOrGreater", DbType.String).Value = query.NameStartsWithOrGreater.ToLower(); + } + if (!string.IsNullOrWhiteSpace(query.NameLessThan)) + { + whereClauses.Add("SortName < @NameLessThan"); + // lowercase this because SortName is stored as lowercase + cmd.Parameters.Add(cmd, "@NameLessThan", DbType.String).Value = query.NameLessThan.ToLower(); + } if (query.Genres.Length > 0) { |
