ADO.NET Een DAL Interface
De DAL interface wordt niet alleen in het project Bibliotex gebruikt maar ook in andere applicaties. Vandaar dat die in de Namespace van het bedrijf staat.
Probleem
We willen er zeker van zijn dat alle DAL klassen de basisfunctionaliteit van een DAL implementeert.
Design
Daarom maken we een interface die ons verplicht de volgende methoden in elke DAL te implemeteren:
- Insert
- Update
- Delete
- SelectOne
- SelectAll
Daarnaast voorzien we een eenvoudige feedback en forceren de implementatie van een Message eigenschap:
- Message
Op het moment dat we de interface schrijven weten we niet van welk gegevenstype de DAL klasse moet zijn. Daarom gebruiken we het generieke <T>
type. Meer info vind je op Generic Type Parameters (C# Programming Guide).
Oplossing
using System.Collections.Generic; namespace Webwinkel.Dal { interface IDal<T> { string Message { get; } int Create(); int Update(); int Delete(); T ReadOne(); List<T> ReadAll(); } }
2017-01-21 16:24:54