add some default types to de-duplicate similar implmentations

This commit is contained in:
Pilzinsel64
2025-03-28 10:40:48 +01:00
parent 9a652a343c
commit 8de643b7d1
17 changed files with 555 additions and 7 deletions

View File

@@ -0,0 +1,26 @@
using System.Diagnostics.CodeAnalysis;
namespace Pilz.Net.Data;
public interface IDataManager
{
void Delete<T>(int id) where T : IDataObject;
void Delete<T>(int id, bool save) where T : IDataObject;
void Delete<T>(T? obj) where T : IDataObject;
void Delete<T>(T? obj, bool save) where T : IDataObject;
T? Find<T>(int id) where T : IDataObject;
bool Find<T>(int id, [NotNullWhen(true)] out T? obj) where T : IDataObject;
T? Find<T>(int? id) where T : IDataObject;
T FindOrNew<T>(int id) where T : IDataObject;
bool FindOrNew<T>(int id, [NotNullWhen(true)] out T? obj) where T : IDataObject;
T FindOrNew<T>(int? id) where T : IDataObject;
bool FindOrNew<T>(int? id, [NotNullWhen(true)] out T? obj) where T : IDataObject;
T? FindOrNull<T>(int id) where T : IDataObject;
bool FindOrNull<T>(int id, out T? obj) where T : IDataObject;
T? FindOrNull<T>(int? id) where T : IDataObject;
bool FindOrNull<T>(int? id, out T? obj) where T : IDataObject;
IQueryable<T> Get<T>() where T : IDataObject;
void Save();
void Save<T>(T obj) where T : IDataObject;
void Save<T>(T obj, bool save) where T : IDataObject;
}