2012-12-21 14 views
6

Zrobiłem stronę Umbraco, i mam kilka członków, których potrzebuję do wyświetlania informacji na stronie kontroli użytkownika (ascx). Ale jedyną rzeczą, jaką można znaleźć to stary Umbraco API, za pomocą metody jak m.GetProperty();:Zdobądź nieruchomości od członków w Umbraco (w Usercontrol)

foreach (Member m in Member.GetAll) { 
    m.getProperty("danceStyles"); 
} 

Ale visual studio mówi, że Member jest przestarzała i powinna wykorzystać Membership zamiast, ale nie wiem, jak mogę dostać ogólne właściwości od członka przez to. Jedyną rzeczą, jaką można uzyskać to Username, Email i Password, a nie właściwości zdefiniować w Umbraco ...

Odpowiedz

2

Yah, Member.GetAll jest przestarzały, ale przypuszczam, że można użyć Member.GetAllAsList() ta metoda jest dostać członków w List, metoda ta działa na mnie

foreach (var member in Member.GetAllAsList()) 
{ 
    // to get Property 
    var property = member.getProperty("danceStyles"); 

    // to get Property Value 
    var propertyValue = member.getProperty("danceStyles").Value; 
} 
+1

Pracował jak urok! pomyślałem, że to była cała klasa "Member", która była przestarzała, więc nawet nie pomyślała o używaniu tego! –

0

właściwości domyślne członka, takie jak login, email i hasło można łatwo odwoływać poprzez właściwości .NET, jednak jak już zauważyłeś, do właściwości niestandardowych można uzyskać dostęp wyłącznie za pomocą łańcucha znaków.

Sposób getProperty() zwraca obiekt umbraco.cms.businesslogic.property.Property, więc jeśli chcesz dostać/set rzeczywiste wartości właściwości niestandardowych już wykonane, po prostu otworzyć [.net] własność [Umbraco] własności Value tak:

m.getProperty("danceStyles").Value 
+0

nie grałeś wokół z Biblioteka 'Membership' jeszcze, więc być może ktoś mógłby zapewnić bardziej" aktualną "odpowiedź. –