diff --git a/src/Umbraco.Core/Models/PagedResult.cs b/src/Umbraco.Core/Models/PagedResult.cs
index ef4d4efdfd..4119751eb3 100644
--- a/src/Umbraco.Core/Models/PagedResult.cs
+++ b/src/Umbraco.Core/Models/PagedResult.cs
@@ -1,5 +1,4 @@
using System;
-using System.Collections.Generic;
using System.Runtime.Serialization;
namespace Umbraco.Core.Models
@@ -9,7 +8,7 @@ namespace Umbraco.Core.Models
///
///
[DataContract(Name = "pagedCollection", Namespace = "")]
- public class PagedResult
+ public abstract class PagedResult
{
public PagedResult(long totalItems, long pageNumber, long pageSize)
{
@@ -39,9 +38,6 @@ namespace Umbraco.Core.Models
[DataMember(Name = "totalItems")]
public long TotalItems { get; private set; }
- [DataMember(Name = "items")]
- public IEnumerable Items { get; set; }
-
///
/// Calculates the skip size based on the paged parameters specified
///
diff --git a/src/Umbraco.Core/Models/PagedResultOfT.cs b/src/Umbraco.Core/Models/PagedResultOfT.cs
new file mode 100644
index 0000000000..efb68863dd
--- /dev/null
+++ b/src/Umbraco.Core/Models/PagedResultOfT.cs
@@ -0,0 +1,20 @@
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace Umbraco.Core.Models
+{
+ ///
+ /// Represents a paged result for a model collection
+ ///
+ ///
+ [DataContract(Name = "pagedCollection", Namespace = "")]
+ public class PagedResult : PagedResult
+ {
+ public PagedResult(long totalItems, long pageNumber, long pageSize)
+ : base(totalItems, pageNumber, pageSize)
+ { }
+
+ [DataMember(Name = "items")]
+ public IEnumerable Items { get; set; }
+ }
+}
diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj
index ffe20afdb3..d6b63880d6 100755
--- a/src/Umbraco.Core/Umbraco.Core.csproj
+++ b/src/Umbraco.Core/Umbraco.Core.csproj
@@ -273,6 +273,7 @@
+
@@ -847,7 +848,7 @@
-
+