6

我已经创建了一个 Umbraco 站点,并且我得到了一些我需要在 usercontrol(ascx) 页面中显示信息的成员。但我唯一能找到的是旧的 umbraco api,m.GetProperty();方法如下:

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

但是visual studio说那Member已经过时了,我应该Membership改用,但我不知道如何通过它从成员那里获取通用属性。我唯一能得到的是Username, Emailand Password, 而不是我在 umbraco 中定义的属性...

4

2 回答 2

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;
}
于 2012-12-21T12:10:12.420 回答
0

成员的默认属性,例如登录名、电子邮件和密码,可以通过 .Net 属性轻松引用,但是正如您所注意到的,自定义属性只能通过字符串访问。

getProperty()方法返回一个umbraco.cms.businesslogic.property.Property对象,因此如果您想获取/设置您已创建的自定义属性的实际值,只需访问Value[umbraco] 属性的 [.net] 属性,如下所示:

m.getProperty("danceStyles").Value
于 2012-12-21T11:49:28.203 回答