Skip to content

Commit 2ea1b6c

Browse files
author
mac
committed
- Performance improvements when saving pages
1 parent 6626efb commit 2ea1b6c

9 files changed

Lines changed: 15 additions & 5 deletions

File tree

FrameworkLibrary/DataMappers/MediaDetailsMapper.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -749,7 +749,9 @@ public static Return Update(IMediaDetail obj, bool save = true)
749749

750750
if (calculatedVirtualPath != mediaDetail.CachedVirtualPath)
751751
{
752-
foreach (var item in obj.Media.ChildMedias)
752+
var childMedias = obj.Media.ChildMedias.Where(i => i.LiveMediaDetail.HistoryVersionNumber == 0 && i.LiveMediaDetail.MediaType.ShowInSiteTree);
753+
754+
foreach (var item in childMedias)
753755
{
754756
var childMediaDetails = item.MediaDetails.Where(i => i.LanguageID == obj.LanguageID);
755757

FrameworkLibrary/Entities/IMediaDetail.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@ public interface IMediaDetail
77
{
88
string AbsoluteUrl { get; }
99
bool AllowCommenting { get; set; }
10-
string AutoCalculatedVirtualPath { get; }
11-
string CachedVirtualPath { get; set; }
10+
string AutoCalculatedVirtualPath { get; } string CachedVirtualPath { get; set; }
1211
bool CanAddToCart { get; set; }
1312
bool CanRender { get; }
1413
IEnumerable<IMediaDetail> ChildMediaDetails { get; }
@@ -86,6 +85,7 @@ public interface IMediaDetail
8685
List<ValidationError> ValidationErrors { get; }
8786
string VirtualPath { get; }
8887

88+
void ClearAutoCalculatedVirtualPathCache();
8989
string CalculatedVirtualPath();
9090
bool CanUserAccessSection(User user);
9191
Return GenerateValidationReturn();

FrameworkLibrary/Entities/MediaDetail.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -347,6 +347,10 @@ public string AbsoluteUrl
347347
}
348348

349349
private string _autoCalculatedVirtualPath = "";
350+
public void ClearAutoCalculatedVirtualPathCache()
351+
{
352+
_autoCalculatedVirtualPath = "";
353+
}
350354
public string AutoCalculatedVirtualPath
351355
{
352356
get

WebApplication/Admin/Views/PageHandlers/Media/Detail.aspx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
<asp:LinkButton ID="PublishNow" runat="server" OnClick="PublishNow_OnClick" Visible="false" Text="Publish Now" />
6363
<asp:LinkButton runat="server" ID="PublishLive" OnClick="PublishLive_OnClick" Text="Publish LIVE" Visible="false" />
6464
<asp:HyperLink ID="EditMediaType" runat="server" Text="Edit Media Type" Visible="false" CssClass="colorbox iframe" />
65-
</ContentTemplate>
65+
</ContentTemplate>
6666
</asp:UpdatePanel>
6767
</asp:Panel>
6868

WebApplication/Admin/Views/PageHandlers/Media/Detail.aspx.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -758,7 +758,7 @@ protected void Save_OnClick(object sender, EventArgs e)
758758

759759
if (!returnObj.IsError)
760760
{
761-
returnObj = MediaDetailsMapper.Update(selectedItem);
761+
returnObj = MediaDetailsMapper.Update(selectedItem);
762762
}
763763
}
764764
}
@@ -780,6 +780,10 @@ protected void Save_OnClick(object sender, EventArgs e)
780780
ContextHelper.Clear(ContextType.Cache);
781781
FileCacheHelper.ClearAllCache();
782782

783+
selectedItem.ClearAutoCalculatedVirtualPathCache();
784+
785+
RedirectToMediaDetail(selectedItem.MediaTypeID, selectedItem.MediaID, selectedItem.Media.ParentMediaID);
786+
783787
//ChangeLinksForAllMediaDetails(oldAbsoluteUrl, selectedItem.AbsoluteUrl);
784788
}
785789

0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)