Ho una classe che voglio usare per memorizzare "proprietà" per un'altra classe. Queste proprietà hanno semplicemente un nome e un valore. Idealmente, ciò che vorrei è poter aggiungere proprietà tipizzate , in modo che il "valore" restituito sia sempre del tipo che voglio che sia.
Il tipo dovrebbe essere sempre un primitivo. Questa classe subclasse una classe astratta che sostanzialmente memorizza il nome e il valore come stringa. L'idea è che questa sottoclasse aggiungerà un po 'di sicurezza del tipo alla classe base (oltre a salvarmi su qualche conversione).
Quindi, ho creato una classe che è (approssimativamente) questa:
public class TypedProperty<DataType> : Property
{
public DataType TypedValue
{
get { // Having problems here! }
set { base.Value = value.ToString();}
}
}
Quindi la domanda è:
Esiste un modo "generico" per convertire da stringa a una primitiva?
Non riesco a trovare alcuna interfaccia generica che colleghi la conversione su tutta la linea (qualcosa come ITryParsable sarebbe stato l'ideale!).