Chcę zachować właściwość między ogłaszaniem zwrotnym w aplikacji ASP.Net. Obecnie to robi:Uzyskaj nazwę właściwości wewnątrz setera
public int MyIndex
{
get
{
return (int)Session[ToString() + "MyIndex"];
}
}
ale woleliby coś takiego:
public int MyIndex
{
get
{
return (int)Session[ToString() + #code_that_returns_property_name#];
}
}
setera pominięte, ale to po prostu popycha wartości do sesji przy użyciu tego samego łańcucha. Czy istnieje sposób na wykorzystanie refleksji lub inne lepsze rozwiązanie?
Wygląda na to, że wreszcie mamy jakieś [składniowej cukierków przyjście] (http://blogs.msdn.com/b/csharpfaq/archive/2014/11/20/new-features-in-c-6. aspx), aby rozwiązać ten problem dla nas: "Często musisz podać ciąg, który nazywa jakiś element programu: podczas rzucania ArgumentNullException chcesz nazwać argument winny, podczas podnoszenia zdarzenia PropertyChanged chcesz nazwać zmienioną właściwość, itp. . " 'jeśli (x == null) wyrzuć nowy ArgumentNullException (nameof (x));' – JMD