CustomPrincipal cd.

Jakiś czas temu pokazałem w tym artykule sposób rozszerzenia możliwości obiektu zalogowanego użytkownika (Context.User). Problemem tamtego rozwiązania jest to, iż na końcu każdego żądania tworzony jest na nowo obiekt CustomPrincipal, co w finalnym efekcie znacząco wpływa na wydajność aplikacji. Oczywiście jest to zależne od ilości rzeczy implementowanych przez nasz obiekt. W celu naprawy tego niedociągnięcia należy nieznacznie zmodyfikować kod klasy z pliku Global.asax.cs – zapraszam do lektury.
Continue reading

CustomPrincipal

UPDATED: Zachęcam do zapoznania się z kontynuacją tego tematu – CustomPrincipal cd.

Obiekt użytkownika wykonującego żądanie (Context.User) jest powszechnie znany. Dzięki niemu w prosty i szybki sposób sprawdzimy, czy osobnik poruszający się po naszej aplikacji jest zalogowany oraz jaki jest jego login. Dodatkowo, jeśli zrzutujemy ten obiekt na klasę, np. RolePrincipal, to otrzymamy dodatkowe możliwości tego obiektu (wymagana deklaracja roleManagera w web.config). A co jeśli chcielibyśmy, aby ten obiekt zawierał nasze właściwości oraz metody? W tym artykule zaprezentuję co należy wykonać, aby obiekt User implementował naszą zawartość.
Continue reading