From 8050a4c2f5d33e72faa85ed74cdfdf993b3a91b7 Mon Sep 17 00:00:00 2001 From: Pilzinsel64 Date: Wed, 2 Apr 2025 07:54:00 +0200 Subject: [PATCH] add missing find method --- Pilz/Data/DataManager.cs | 21 ++++++++++++++++----- Pilz/Data/IDataManager.cs | 1 + 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Pilz/Data/DataManager.cs b/Pilz/Data/DataManager.cs index ba89d19..d08f806 100644 --- a/Pilz/Data/DataManager.cs +++ b/Pilz/Data/DataManager.cs @@ -97,13 +97,24 @@ public abstract class DataManager : IDataManager public virtual bool Find(int id, [NotNullWhen(true)] out T? obj) where T : class, IDataObject { - if (FindEntity(id) is not T t) + if (Find(id) is T t) { - obj = default; - return false; + obj = t; + return true; } - obj = t; - return true; + obj = default; + return false; + } + + public virtual bool Find(int? id, [NotNullWhen(true)] out T? obj) where T : class, IDataObject + { + if (Find(id) is T t) + { + obj = t; + return true; + } + obj = default; + return false; } public virtual void Delete(int id) where T : class, IDataObject diff --git a/Pilz/Data/IDataManager.cs b/Pilz/Data/IDataManager.cs index 3741493..038609b 100644 --- a/Pilz/Data/IDataManager.cs +++ b/Pilz/Data/IDataManager.cs @@ -11,6 +11,7 @@ public interface IDataManager T? Find(int id) where T : class, IDataObject; bool Find(int id, [NotNullWhen(true)] out T? obj) where T : class, IDataObject; T? Find(int? id) where T : class, IDataObject; + bool Find(int? id, [NotNullWhen(true)] out T? obj) where T : class, IDataObject; T FindOrNew(int id) where T : class, IDataObject; bool FindOrNew(int id, [NotNullWhen(true)] out T? obj) where T : class, IDataObject; T FindOrNew(int? id) where T : class, IDataObject;