你如何在 Umbraco 中创建新的 UserType
How do you create new UserType in Umbraco
我正在查看用户服务,发现了一个可爱的方法:
public void SaveUserType(IUserType userType, bool raiseEvents = true)
需要IUserType
。我可以在 Github:
上看到的实现
是内部的。
如何在 Umbraco 中以编程方式创建新的 UserType
?
我也试过:
Roles.Provider.CreateRole("Test User Type");
创建您自己的 class 版本:
确保添加引用:System.Runtime.Serialization
;
[Serializable]
[DataContract(IsReference = true)]
public class ProvisioningUserType : Entity, IUserType
{
[DataMember]
public string Alias { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public IEnumerable<string> Permissions { get; set; }
}
实例化并使用 SaveUserType
方法
If you are getting this error: String or binary data would be
truncated
then you are probably using the wrong permission values. These seem to
work:
public class UserTypes
{
public const string CultureAndHostNames = "I";//"Culture and Hostnames";
public const string AuditTrail = "Z";//"Audit Trail";
public const string BrowseNode = "F";//"Browse Node";
public const string ChangeDocumentType = "7";//"Change Document Type";
public const string Copy = "O";//"Copy";
public const string Delete = "D";//"Delete";
public const string Move = "M";//"Move";
public const string Create = "C";//"Create";
public const string PublicAccess = "P";//"Public access";
public const string Publish = "U";//"Publish";
public const string Permissions = "R";//"Permissions";
public const string Rollback = "K";//"Rollback";
public const string SendToTranslation = "5";//"Send To Translation";
public const string Sort = "S";//"Sort";
public const string SendToPublish = "H";//"Send To Publish";
public const string Translate = "4";//"Translate";
public const string Update = "A";//"Update";
public const string UserGroupPermission = "œ";//"User Group Permissions";
}
我正在查看用户服务,发现了一个可爱的方法:
public void SaveUserType(IUserType userType, bool raiseEvents = true)
需要IUserType
。我可以在 Github:
是内部的。
如何在 Umbraco 中以编程方式创建新的 UserType
?
我也试过:
Roles.Provider.CreateRole("Test User Type");
创建您自己的 class 版本:
确保添加引用:System.Runtime.Serialization
;
[Serializable]
[DataContract(IsReference = true)]
public class ProvisioningUserType : Entity, IUserType
{
[DataMember]
public string Alias { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public IEnumerable<string> Permissions { get; set; }
}
实例化并使用 SaveUserType
方法
If you are getting this error: String or binary data would be truncated
then you are probably using the wrong permission values. These seem to work:
public class UserTypes
{
public const string CultureAndHostNames = "I";//"Culture and Hostnames";
public const string AuditTrail = "Z";//"Audit Trail";
public const string BrowseNode = "F";//"Browse Node";
public const string ChangeDocumentType = "7";//"Change Document Type";
public const string Copy = "O";//"Copy";
public const string Delete = "D";//"Delete";
public const string Move = "M";//"Move";
public const string Create = "C";//"Create";
public const string PublicAccess = "P";//"Public access";
public const string Publish = "U";//"Publish";
public const string Permissions = "R";//"Permissions";
public const string Rollback = "K";//"Rollback";
public const string SendToTranslation = "5";//"Send To Translation";
public const string Sort = "S";//"Sort";
public const string SendToPublish = "H";//"Send To Publish";
public const string Translate = "4";//"Translate";
public const string Update = "A";//"Update";
public const string UserGroupPermission = "œ";//"User Group Permissions";
}