using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Web.Core { public abstract class IDataObject where TData : IDataObject, new() where TKey : struct { //static TData LoadById(TKey id); //static TData CreateByIdFromRegistry(TKey id); internal abstract void CreateByIdFromRegistry(TKey id, bool forLoadingFromHash); //TKey GetId(); public abstract TKey id { get; } internal abstract void markAsDeletedFromRegistry(); } }