blob: fbab76d2706d55e5f1000a2f98b8195dc1e90d0a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
using System;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Dough.Models.Database;
namespace Dough.Models
{
public static class DbSetOverrides
{
public static T SingleOrDefault<T>(this DbSet<T> entity, Guid id,
bool includeHidden = false) where T : BaseModel
{
if (includeHidden)
return entity.SingleOrDefault(c => c.Id == id);
return entity.SingleOrDefault(c => c.Id == id && !c.Hidden);
}
public static User SingleByNameOrDefault(this DbSet<User> users, string username, bool includeHidden = false)
{
if (includeHidden)
return users.SingleOrDefault(c => string.Equals(c.Username, username, StringComparison.InvariantCultureIgnoreCase));
return users.SingleOrDefault(c => string.Equals(c.Username, username, StringComparison.InvariantCultureIgnoreCase)
&& !c.Hidden);
}
}
}
|