diff --git a/Pilz.Net/Api/Server/BaseItemHandler.cs b/Pilz.Net/Api/Server/BaseItemHandler.cs index f2db9ac..1ee35ab 100644 --- a/Pilz.Net/Api/Server/BaseItemHandler.cs +++ b/Pilz.Net/Api/Server/BaseItemHandler.cs @@ -11,6 +11,8 @@ public abstract class BaseItemHandler(IApiServer server) where TEntity : class, IDataObject where TUpdateMsg : ApiMessage { + protected readonly bool isNamedObjectType = typeof(TEntity).IsAssignableTo(typeof(INamedObject)); + protected virtual bool RegisterGetAll => true; protected virtual bool RegisterPost => true; @@ -47,6 +49,8 @@ public abstract class BaseItemHandler(IApiServer server) protected virtual IQueryable SortEntities(IQueryable entities) { + if (isNamedObjectType) + return entities.OrderBy(n => ((INamedObject)n).Name); return entities; } } diff --git a/Pilz.Net/Pilz.Net.csproj b/Pilz.Net/Pilz.Net.csproj index 06eb65b..abf4685 100644 --- a/Pilz.Net/Pilz.Net.csproj +++ b/Pilz.Net/Pilz.Net.csproj @@ -8,7 +8,7 @@ - 2.8.1 + 2.8.2 diff --git a/Pilz/Data/INamedObject.cs b/Pilz/Data/INamedObject.cs new file mode 100644 index 0000000..642d8cc --- /dev/null +++ b/Pilz/Data/INamedObject.cs @@ -0,0 +1,6 @@ +namespace Pilz.Data; + +public interface INamedObject +{ + string Name { get; } +} diff --git a/Pilz/Pilz.csproj b/Pilz/Pilz.csproj index 61d900d..d6a4e2e 100644 --- a/Pilz/Pilz.csproj +++ b/Pilz/Pilz.csproj @@ -5,7 +5,7 @@ latest enable annotations - 2.5.1 + 2.5.2