Desidero conservare una proprietà tra i postback in un'applicazione ASP.Net. Al momento di fare questo:Ottieni il nome della proprietà all'interno del setter
public int MyIndex
{
get
{
return (int)Session[ToString() + "MyIndex"];
}
}
ma preferirei qualcosa di simile:
public int MyIndex
{
get
{
return (int)Session[ToString() + #code_that_returns_property_name#];
}
}
Setter omesso, ma semplicemente spinge valore nella sessione utilizzando la stessa stringa. C'è un modo per usare la riflessione o una soluzione diversa diversa?
Sembra che finalmente abbiamo un po 'di [sintattico venuta caramelle] (http://blogs.msdn.com/b/csharpfaq/archive/2014/11/20/new-features-in-c-6. aspx) per risolvere questo problema per noi: "Spesso è necessario fornire una stringa che chiami alcuni elementi del programma: quando si lancia un ArgumentNullException si desidera nominare l'argomento colpevole, quando si genera un evento PropertyChanged si desidera nominare la proprietà che è stata modificata, ecc. ". 'if (x == null) lanciare una nuova ArgumentNullException (nameof (x));' – JMD