46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace bsmd.database
|
|
{
|
|
/// <summary>
|
|
/// Dieses Interface wird von DatabaseEntities implementiert, die 1:n Sublisten haben, m
|
|
/// mit anderen Worten, alles, was n-fach vorkommen kann
|
|
/// </summary>
|
|
public interface ISublistContainer
|
|
{
|
|
|
|
ISublistElement GetSublistElementWithIdentifier(string identifier);
|
|
|
|
/// <summary>
|
|
/// Liefert die maximale Anzahl an Excelzeilen, die für das n-fache Element eingelesen werden
|
|
/// sollen. TODO: Das könnte ggf auch an Bord geändert werden?, wird aber i.d.R. über die Names-Konvention
|
|
/// definiert. d.h. wenn keine passenden Name-Ranges angegeben sind wird das ohnehin nicht eingelesen werden
|
|
/// können
|
|
/// </summary>
|
|
int NumberOfExcelRows { get; }
|
|
|
|
/// <summary>
|
|
/// Ruft die Speicherfunktion für alle untergeordneten Elemente (rekursiv) auf
|
|
/// </summary>
|
|
void SaveElements();
|
|
|
|
/// <summary>
|
|
/// Löscht die untergeordneten Objekte
|
|
/// </summary>
|
|
void DeleteElements();
|
|
}
|
|
|
|
/// <summary>
|
|
/// Dieses Interface kennzeichnet die Merkmale eines Sublisten-Elements
|
|
/// </summary>
|
|
public interface ISublistElement
|
|
{
|
|
string Identifier { get; set; }
|
|
}
|
|
|
|
}
|