Skip to main content
All docs
V25.1
  • .NET Framework 4.6.2+

    ISecurityUserLoginInfo.User Property

    Returns a link to the related XAF user.

    Namespace: DevExpress.ExpressApp.Security

    Assembly: DevExpress.ExpressApp.v25.1.dll

    NuGet Package: DevExpress.ExpressApp

    Declaration

    object User { get; }

    Property Value

    Type Description
    Object

    The user name.

    Remarks

    The following example uses the ISecurityUserWithLoginInfo interface to store user authentication methods:

    using System.Collections.ObjectModel;
    using System.ComponentModel;
    using DevExpress.ExpressApp.Security;
    using DevExpress.Persistent.Base;
    using DevExpress.Persistent.BaseImpl.EF;
    using DevExpress.Persistent.BaseImpl.EF.PermissionPolicy;
    
    namespace MainDemo.Module.BusinessObjects;
    
    [CurrentUserDisplayImage(nameof(Photo))]
    [DefaultProperty(nameof(UserName))]
    public class ApplicationUser : PermissionPolicyUser, ISecurityUserWithLoginInfo {
    
        public ApplicationUser() { }
    
        [Browsable(false)]
        [DevExpress.ExpressApp.DC.Aggregated]
        public virtual IList<ApplicationUserLoginInfo> UserLogins { get; set; } = new ObservableCollection<ApplicationUserLoginInfo>();
    
        IEnumerable<ISecurityUserLoginInfo> IOAuthSecurityUser.UserLogins => UserLogins;
    
        [HideInUI(HideInUI.ListViewColumn)]
        [ImageEditor(ListViewImageEditorCustomHeight = 75, DetailViewImageEditorFixedHeight = 150)]
        public virtual MediaDataObject Photo { get; set; }
    
        ISecurityUserLoginInfo ISecurityUserWithLoginInfo.CreateUserLoginInfo(string loginProviderName, string providerUserKey) {
            ApplicationUserLoginInfo result = ObjectSpace.CreateObject<ApplicationUserLoginInfo>();
            result.LoginProviderName = loginProviderName;
            result.ProviderUserKey = providerUserKey;
            result.User = this;
            return result;
        }
    
        public override void OnCreated() {
            Photo = ObjectSpace.CreateObject<MediaDataObject>();
        }
    }
    
    See Also