Skip to main content
.NET 6.0+

IsGrantedExtensions.CanWriteByUser(SecurityStrategy, IPermissionPolicyUser, Type, String) Method

Checks whether the specified user can write objects of the specified type or their member.

Namespace: DevExpress.ExpressApp.Security

Assembly: DevExpress.ExpressApp.Security.v23.2.dll

Declaration

public static bool CanWriteByUser(
    this SecurityStrategy security,
    IPermissionPolicyUser targetUser,
    Type type,
    string memberName = null
)

Parameters

Name Type Description
security SecurityStrategy

A SecurityStrategy object that specifies an application’s Security Strategy.

targetUser IPermissionPolicyUser

An IPermissionPolicyUser object that is a user this method checks.

type Type

A Type of objects this method checks.

Optional Parameters

Name Type Default Description
memberName String null

A String that is a name of objects’ member this method checks. This parameter is optional.

Returns

Type Description
Boolean

true, if the specified user can write objects of the specified type or their member; otherwise, false.

Remarks

The following example shows how to use this method.

using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Security;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl.PermissionPolicy;
using System;
// ...
public class CheckWritePermissionController : ObjectViewController<ListView, Contact> {
    protected override void OnActivated() {
        base.OnActivated();
        SecurityStrategy securityStrategy = Application.GetSecurityStrategy();
        foreach (IPermissionPolicyUser user in ObjectSpace.GetObjects<PermissionPolicyUser>()) {
            if (!securityStrategy.CanWriteByUser(user, typeof(Department), nameof(Department.Office))) {
                // ...
            }
        }
    }
}
See Also