Is there a proper way of setting SortOrder on a new entity when saving it in Umbraco 7.1.8?
Default the SortOrder is set to the highest number +1 when a new entity is saved, but I want it to have the lowest -1, so that the entity will be the first in the list.
I have tried to set it on the events Created and Saving, but it seems to be overwritten when Saved.
I have solved it for now with the code below, but I wonder if there is a better way/best practice to do it?
void ContentService_Saved(IContentService sender, Umbraco.Core.Events.SaveEventArgs e) { var contentTypes = new List() { "Nyhet", "Rundskriv", "Sirkulaere" }; if (e.SavedEntities.Count() == 1) { var entity = e.SavedEntities.First(); if (entity.IsNewEntity() && contentTypes.Contains(entity.ContentType.Alias)) { var parentEntity = entity.Parent(); if (parentEntity != null) { entity.SortOrder = parentEntity.Children().OrderBy(n => n.SortOrder).First().SortOrder - 1; if (entity.Published) { sender.SaveAndPublishWithStatus(entity, 0, false); } else { sender.Save(entity, 0, false); } } } } }
Setting SortOrder when entity is saved
Is there a proper way of setting SortOrder on a new entity when saving it in Umbraco 7.1.8?
Default the SortOrder is set to the highest number +1 when a new entity is saved, but I want it to have the lowest -1, so that the entity will be the first in the list.
I have tried to set it on the events Created and Saving, but it seems to be overwritten when Saved.
I have solved it for now with the code below, but I wonder if there is a better way/best practice to do it?
is working on a reply...