Sto per avviare un nuovo sviluppo del mio progetto commerciale ASP.NET C# MVC che gestisce le candidature per gli eventi a cavallo in Australia.Utilizzo di interfacce C# per espandere l'applicazione esistente
Vorrei espanderlo ad altri tipi di eventi, ad esempio, corse automobilistiche, calcio, qualsiasi cosa. Al momento, è molto specifico per questo sport
Ho fatto ricerche su interfacce e altri approcci OOP, ma applicarlo al mondo reale è un po 'scoraggiante.
Questo è il mio piano di base:
public interface INomination
{
public void AddNomination();
public void UpdateNomination();
public void DeleteNomination();
}
public BaseNomination
{
// Define properties
}
public HorseNomination : BaseNomination, INomination
{
// Horse nomination specific stuff, like specifying the horse
public bigint HorseID { get; set; }
}
Poi, in un NominationService, ho potuto chiamare questa
public void HandleNomination(INomination nomination)
{
nomination.Add();
}
Dove la mia testa inizia a male è come distinguere tra una nomina che richiede l'utente deve specificare il cavallo per l'HorseNomination, o no, come CarNomination?
Ho bisogno di IHorseNomination, ICarNomination? In tal caso, come faccio, ad esempio, a gestirlo per rendere il tipo di View per l'input dell'utente?
La classe 'BaseNomination' dovrebbe già contenere un' NominationID'. Dovrebbe essere utilizzabile in tutti i tipi di nomination. –