@@ -65,7 +65,7 @@ public int AddNewsEntry (NewsEntry newsEntry,
65
65
UpdateNewsEntryText ( newsEntry ) ;
66
66
UpdateContentItem ( contentItem , newsEntry , terms , images ) ;
67
67
68
- ClearCache ( ) ;
68
+ ClearCache ( newsEntry ) ;
69
69
70
70
return newsEntry . EntryId ;
71
71
}
@@ -185,7 +185,7 @@ public void UpdateNewsEntry (NewsEntry newsEntry, List<Term> terms, int moduleId
185
185
termController . AddTermToContent ( term , newsEntry . ContentItem ) ;
186
186
}
187
187
188
- ClearCache ( ) ;
188
+ ClearCache ( newsEntry ) ;
189
189
}
190
190
191
191
/// <summary>
@@ -196,15 +196,15 @@ public void UpdateNewsEntry (NewsEntry newsEntry)
196
196
{
197
197
NewsDataProvider . Instance . Update ( newsEntry ) ;
198
198
199
- ClearCache ( ) ;
199
+ ClearCache ( newsEntry ) ;
200
200
}
201
201
202
202
public void DeleteNewsEntry ( INewsEntry newsEntry )
203
203
{
204
204
// delete content item, related news entry and text records will be deleted by foreign key rules
205
205
NewsDataProvider . Instance . ContentController . DeleteContentItem ( newsEntry . ContentItem ) ;
206
206
207
- ClearCache ( ) ;
207
+ ClearCache ( newsEntry ) ;
208
208
}
209
209
210
210
public IEnumerable < NewsEntry > GetAllNewsEntries ( int moduleId ,
@@ -383,8 +383,17 @@ public void ClearModuleCache (int moduleId, int tabModuleId)
383
383
DataCache . ClearCache ( NewsCacheKeyPrefix + "ModuleId=" + moduleId ) ;
384
384
}
385
385
386
- public void ClearCache ( )
386
+ // Workaround for GH-139: Content items cache issues on DNN 9
387
+ private void ClearContentItemCache ( int ? contentItemId )
387
388
{
389
+ if ( contentItemId != null ) {
390
+ DataCache . RemoveCache ( $ "ContentItems{ contentItemId } ") ;
391
+ }
392
+ }
393
+
394
+ private void ClearCache ( INewsEntry newsEntry )
395
+ {
396
+ ClearContentItemCache ( newsEntry . ContentItemId ) ;
388
397
DataCache . ClearCache ( NewsCacheKeyPrefix ) ;
389
398
}
390
399
}
0 commit comments