@@ -39,6 +39,7 @@ public class MemberRepository : ContentRepositoryBase<int, IMember, MemberReposi
39
39
private readonly ITagRepository _tagRepository ;
40
40
private bool _passwordConfigInitialized ;
41
41
private string ? _passwordConfigJson ;
42
+ private const string UsernameCacheKey = "uRepo_userNameKey+" ;
42
43
43
44
public MemberRepository (
44
45
IScopeAccessor scopeAccessor ,
@@ -326,7 +327,7 @@ public override IEnumerable<IMember> GetPage(
326
327
}
327
328
328
329
public IMember ? GetByUsername ( string ? username ) =>
329
- _memberByUsernameCachePolicy . GetByUserName ( "uRepo_userNameKey+" , username , PerformGetByUsername , PerformGetAllByUsername ) ;
330
+ _memberByUsernameCachePolicy . GetByUserName ( UsernameCacheKey , username , PerformGetByUsername , PerformGetAllByUsername ) ;
330
331
331
332
public int [ ] GetMemberIds ( string [ ] usernames )
332
333
{
@@ -606,6 +607,12 @@ protected virtual Sql<ISqlContext> GetBaseQuery(QueryType queryType, bool curren
606
607
return sql ;
607
608
}
608
609
610
+ protected override void PersistDeletedItem ( IMember entity )
611
+ {
612
+ _memberByUsernameCachePolicy . DeleteByUserName ( UsernameCacheKey , entity . Username ) ;
613
+ base . PersistDeletedItem ( entity ) ;
614
+ }
615
+
609
616
// TODO: move that one up to Versionable! or better: kill it!
610
617
protected override Sql < ISqlContext > GetBaseQuery ( bool isCount ) =>
611
618
GetBaseQuery ( isCount ? QueryType . Count : QueryType . Single ) ;
@@ -936,6 +943,8 @@ protected override void PersistUpdatedItem(IMember entity)
936
943
937
944
OnUowRefreshedEntity ( new MemberRefreshNotification ( entity , new EventMessages ( ) ) ) ;
938
945
946
+ _memberByUsernameCachePolicy . DeleteByUserName ( UsernameCacheKey , entity . Username ) ;
947
+
939
948
entity . ResetDirtyProperties ( ) ;
940
949
}
941
950
0 commit comments