62 lines
2.7 KiB
C#
62 lines
2.7 KiB
C#
using System.Collections.Generic;
|
|
using Kreta.Framework.Collections;
|
|
|
|
namespace Kreta.Framework.Entities
|
|
{
|
|
/// <summary>
|
|
/// Entitások adatbázisműveleteit végző objektumának felülete.
|
|
/// </summary>
|
|
public interface IEntityDataAccessor
|
|
{
|
|
/// <summary>
|
|
/// Betölti egy entitás állapotát az adatbázisból.
|
|
/// </summary>
|
|
/// <param name="entity">A betöltendő entitás</param>
|
|
/// <param name="entityId">Az entitás adatbázisbeli azonosítója</param>
|
|
/// <returns>True, ha sikeres; egyébként False</returns>
|
|
bool LoadEntity(Entity entity, int entityId);
|
|
|
|
/// <summary>
|
|
/// Oszlopszűrten beltölti egy entitás állapotát az adatbázisból
|
|
/// </summary>
|
|
/// <param name="entity">A betöltendő entitás</param>
|
|
/// <param name="entityId">Az entitás adatbázisbeli azonosítója</param>
|
|
/// <param name="columnFilterMode">A szűrés módja, megengedő vagy tiltó</param>
|
|
/// <param name="columns">A szűrendő oszlopok felsorolása</param>
|
|
/// <returns>True, ha sikeres; egyébként False</returns>
|
|
bool FilteredLoadEntity(Entity entity, int entityId, ColumnFilterMode columnFilterMode, IEnumerable<string> columns);
|
|
|
|
/// <summary>
|
|
/// Betölt egy entitás listát a megadott szűrő feltétellel.
|
|
/// </summary>
|
|
/// <param name="collection">A feltöltendő lista</param>
|
|
/// <param name="filter">A szűrő SQL töredék</param>
|
|
void LoadWithFilter(IEntityCollection collection, string filter, Dictionary<string, object> commandParameters);
|
|
|
|
/// <summary>
|
|
/// Létrehoz egy új entitás példányt az adatbázisban.
|
|
/// </summary>
|
|
/// <param name="entity">A létrehozandó entitás</param>
|
|
void InsertEntity(Entity entity);
|
|
|
|
/// <summary>
|
|
/// Módosít egy entitás példányt az adatbázisban.
|
|
/// </summary>
|
|
/// <param name="entity">A módosítandó entitás</param>
|
|
/// <returns>True, ha sikeres; egyébként false</returns>
|
|
bool UpdateEntity(Entity entity);
|
|
|
|
/// <summary>
|
|
/// Módosítja egy entitás példány asszociációs kapcsolómezőit az adatbázisban.
|
|
/// </summary>
|
|
/// <param name="entity">A módosítandó entitás</param>
|
|
/// <returns>True, ha sikeres; egyébként false</returns>
|
|
bool UpdateAssociations(Entity entity);
|
|
|
|
/// <summary>
|
|
/// Töröl egy entitás példányt az adatbázisból.
|
|
/// </summary>
|
|
/// <param name="entity">A törlendő entitás</param>
|
|
void DeleteEntity(Entity entity, bool logikai = true);
|
|
}
|
|
}
|