[VB2005]Overload

venerdì 02 gennaio 2009 - 16.24

Teech Profilo | Expert

Ho un problema apparentemente semplice:
Ho una classe Persona con le proprietà Codice e CodiceFiscale di tipo String.
Ho una classe PersoneCollection che contiene un metodo che mi permette di cercare le persone: come posso creare 2 metodi in overload per cercare per Codice o per CodiceFiscale?
Public Overload Function Cerca(ByVal Codice As String) As Persona 'Fa qualcosa End Function Public Overload Function Cerca(ByVal CodiceFiscale As String) As Persona 'Fa qualcosa End Function
Grazie mille
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

aiedail92 Profilo | Expert

Ciao

Ovviamente non puoi scrivere due funzioni con la stesa firma, quindi le soluzioni che hai sono due: o aggiungi alla funzione un parametro per il tipo di ricerca da utilizzare (ad esempio un membro di un'enumerazione da te definita), oppure esegui un controllo sul formato del parametro di tipo String, e se è un codice fiscale valido esegui la ricerca fra i codici fiscali, se invece è formalmente valido come codice ricerchi nei codici, se non è valido per nessuno dei due sollevi un'eccezione (ad esempio FormatException o ArgumentException)

Luca

Teech Profilo | Expert

Devo dire che me lo aspettavo che non si potesse, ma le soluzioni da te citate (quella dell'enumerazione in primis) mi piacciono proprio!!!
Gazie mille!!!
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5