diff --git a/umbraco.MacroEngines.Juno/RazorDynamicNode/DynamicNode.cs b/umbraco.MacroEngines.Juno/RazorDynamicNode/DynamicNode.cs index 8254ab7e54..01371bd1b1 100644 --- a/umbraco.MacroEngines.Juno/RazorDynamicNode/DynamicNode.cs +++ b/umbraco.MacroEngines.Juno/RazorDynamicNode/DynamicNode.cs @@ -999,17 +999,32 @@ namespace umbraco.MacroEngines [Obsolete("@Model.NodeById is obsolute, use @Library.NodeById")] public DynamicNode NodeById(int Id) { - return razorLibrary.Value.NodeById(Id); + var node = razorLibrary.Value.NodeById(Id); + if (node is DynamicNull) + { + return new DynamicNode(0); + } + return node; } [Obsolete("@Model.NodeById is obsolute, use @Library.NodeById")] public DynamicNode NodeById(string Id) { - return razorLibrary.Value.NodeById(Id); + var node = razorLibrary.Value.NodeById(Id); + if (node is DynamicNull) + { + return new DynamicNode(0); + } + return node; } [Obsolete("@Model.NodeById is obsolute, use @Library.NodeById")] public DynamicNode NodeById(object Id) { - return razorLibrary.Value.NodeById(Id); + var node = razorLibrary.Value.NodeById(Id); + if (node is DynamicNull) + { + return new DynamicNode(0); + } + return node; } [Obsolete("@Model.NodeById is obsolute, use @Library.NodeById")] public DynamicNodeList NodesById(List Ids) @@ -1029,17 +1044,32 @@ namespace umbraco.MacroEngines [Obsolete("@Model.MediaById is obsolute, use @Library.MediaById")] public DynamicNode MediaById(int Id) { - return razorLibrary.Value.MediaById(Id); + var media = razorLibrary.Value.MediaById(Id); + if (media is DynamicNull) + { + return new DynamicNode(0); + } + return media; } [Obsolete("@Model.MediaById is obsolute, use @Library.MediaById")] public DynamicNode MediaById(string Id) { - return razorLibrary.Value.MediaById(Id); + var media = razorLibrary.Value.MediaById(Id); + if (media is DynamicNull) + { + return new DynamicNode(0); + } + return media; } [Obsolete("@Model.MediaById is obsolute, use @Library.MediaById")] public DynamicNode MediaById(object Id) { - return razorLibrary.Value.MediaById(Id); + var media = razorLibrary.Value.MediaById(Id); + if (media is DynamicNull) + { + return new DynamicNode(0); + } + return media; } [Obsolete("@Model.MediaById is obsolute, use @Library.MediaById")] public DynamicNodeList MediaById(List Ids) diff --git a/umbraco.MacroEngines.Juno/RazorDynamicNode/RazorLibraryCore.cs b/umbraco.MacroEngines.Juno/RazorDynamicNode/RazorLibraryCore.cs index f6a0bebdeb..11eb36af0c 100644 --- a/umbraco.MacroEngines.Juno/RazorDynamicNode/RazorLibraryCore.cs +++ b/umbraco.MacroEngines.Juno/RazorDynamicNode/RazorLibraryCore.cs @@ -35,6 +35,10 @@ namespace umbraco.MacroEngines.Library if (node != null && node.Id == 0) return new DynamicNull(); return node; } + public dynamic NodeById(DynamicNull Id) + { + return new DynamicNull(); + } public dynamic NodeById(object Id) { if (Id.GetType() == typeof(DynamicNull)) @@ -70,7 +74,10 @@ namespace umbraco.MacroEngines.Library { return NodesById(Ids.ToList()); } - + public dynamic MediaById(DynamicNull Id) + { + return new DynamicNull(); + } public dynamic MediaById(int Id) { var ebm = ExamineBackedMedia.GetUmbracoMedia(Id);