2012-12-21 27 views
6

Tôi đã tạo một trang web Umbraco và tôi có một số thành viên cần hiển thị thông tin trong trang usercontrol (ascx). Nhưng điều duy nhất tôi có thể tìm thấy là api umbraco cũ, với phương pháp m.GetProperty(); như:Nhận tài sản từ Thành viên trong Umbraco (Trong Usercontrol)

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

Nhưng visual studio nói rằng Member là lỗi thời và tôi nên sử dụng Membership thay vào đó, nhưng tôi không biết làm thế nào tôi có thể nhận được tính chất chung của một thành viên thông qua đó. Chỉ có điều tôi có thể nhận được là Username, EmailPassword, và không tính tôi xác định trong umbraco ...

Trả lời

2

Yah, Member.GetAll là lỗi thời nhưng tôi cho rằng bạn có thể sử dụng Member.GetAllAsList() phương pháp này là để có được các thành viên trong danh sách, phương pháp này làm việc cho tôi

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

Làm việc như một sự quyến rũ! nghĩ rằng đó là toàn bộ lớp 'Thành viên 'đã lỗi thời nên thậm chí không nghĩ đến việc sử dụng nó! –

0

thuộc tính mặc định của một thành viên, chẳng hạn như đăng nhập, Email và mật khẩu có thể dễ dàng được tham chiếu thông qua thuộc tính Net, tuy nhiên như bạn đã nhận thấy, các thuộc tính tùy chỉnh chỉ có thể được truy cập bằng chuỗi.

Phương pháp getProperty() trả về một đối tượng umbraco.cms.businesslogic.property.Property, vì vậy nếu bạn muốn nhận/thiết lập các giá trị thực tế của tài sản tùy chỉnh bạn đã thực hiện, bạn chỉ cần truy cập vào Value [.net] tài sản của [umbraco] tài sản như sau:

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

tôi đã không chơi xung quanh với các Thư viện 'Membership', vì vậy có lẽ ai đó có thể cung cấp một câu trả lời" cập nhật "hơn. –

Các vấn đề liên quan