2012-12-21 36 views
6

我製作了一個Umbraco網站,並且我得到了一些需要在usercontrol(ascx)頁面中顯示信息的成員。 但我能找到的唯一的東西是舊的一把umbraco API,與m.GetProperty();方法,如:從Umbraco會員中獲取屬性(在Usercontrol中)

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

但視覺工作室說Member過時,我應該使用Membership代替,但我不知道我能得到通過它的成員的通用屬性。 我唯一能得到的是UsernameEmailPassword,而不是我在一把umbraco定義屬性...

回答

2

嚴,Member.GetAll已經過時了,但我想你可以使用Member.GetAllAsList()這種方法,就是以列表的成員,這個方法對我的作品

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

工作就像一個魅力!認爲這是整個'會員'類已經過時,所以甚至沒有想到使用它! –

0

成員的默認屬性,如登錄,電子郵件和密碼可以很容易地通過.NET屬性來引用,但正如您已經注意到的那樣,自定義屬性只能通過字符串訪問。

getProperty()方法返回一個umbraco.cms.businesslogic.property.Property對象,所以如果你想獲取/設置你所做的自定義屬性的實際值,只需訪問[一把umbraco]屬性的Value [.NET]屬性,像這樣:

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

我沒有與周圍的發揮'會員資格'圖書館,所以也許有人可以提供更「最新」的答案。 –