Ik zou graag jullie raad vragen wat betreft het maken van een custom control in ASP.NET. M'n klant wil in een generieke database tabel verschillende typen 'items' opslaan. Er zijn een aantal vooraf gedefinieerde items en de klant krijgt de mogelijkheid om eigen item typen aan te maken. De tabel bevat een aantal generieke velden, maar die zijn niet voor ieder type van toepassing.
Nu wil ik een control maken die de volgende mogelijkheden biedt:
- Selectie van een item type
- Invoer van de relevante velden. Bij de vooraf gedefinieerde typen moet een specifieke interface komen, bij de rest wordt een generieke interface gebruikt met alle invoervelden beschikbaar
Voor het bekijken / bewerken van reeds bestaande items geldt hetzelfde: specifieke lay-out voor bepaalde types, generieke voor de rest.
Vergelijk het bijvoorbeeld met het toevoegen van een item in outlook, waarbij een taak/agenda afspraak ieder hun eigen lay-out hebben maar onderhuids wel van hetzelfde type afstammen.
Nu is dus de vraag: maak ik het beste voor ieder type een eigen control (veel werk en lastig te onderhouden) of is het handiger om alle lay-outs onder te brengen in één control die dan verder a.d.h.v. het type uitzoekt wat ie moet laten zien? Bij die laatstse vraag ik me af wat een handige methode is en vrees ik ervoor dat de lay-out (.ascx) file dan wel ernstig groot / onoverzichtelijk gaat worden.
Nu wil ik een control maken die de volgende mogelijkheden biedt:
- Selectie van een item type
- Invoer van de relevante velden. Bij de vooraf gedefinieerde typen moet een specifieke interface komen, bij de rest wordt een generieke interface gebruikt met alle invoervelden beschikbaar
Voor het bekijken / bewerken van reeds bestaande items geldt hetzelfde: specifieke lay-out voor bepaalde types, generieke voor de rest.
Vergelijk het bijvoorbeeld met het toevoegen van een item in outlook, waarbij een taak/agenda afspraak ieder hun eigen lay-out hebben maar onderhuids wel van hetzelfde type afstammen.
Nu is dus de vraag: maak ik het beste voor ieder type een eigen control (veel werk en lastig te onderhouden) of is het handiger om alle lay-outs onder te brengen in één control die dan verder a.d.h.v. het type uitzoekt wat ie moet laten zien? Bij die laatstse vraag ik me af wat een handige methode is en vrees ik ervoor dat de lay-out (.ascx) file dan wel ernstig groot / onoverzichtelijk gaat worden.