Skip to main content
.NET 6.0+

IsGrantedExtensions.CanDeleteByUser(SecurityStrategy, IPermissionPolicyUser, Type) Method

Checks whether the specified user can delete objects of the specified type.

Namespace: DevExpress.ExpressApp.Security

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

Declaration

public static bool CanDeleteByUser(
    this SecurityStrategy security,
    IPermissionPolicyUser targetUser,
    Type type
)

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.

Returns

Type Description
Boolean

true, if the specified user can delete objects of the specified type; otherwise, false.

Remarks

Important

This overload of the CanDeleteByUser method may reduce performance and cause incorrect behavior in some usage scenarios. We recommend that you always use the CanDeleteByUser method’s overloads that accept an Object Space as a parameter to check permissions for a specific object.

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;
// ...
public class CheckDeletePermissionController : ViewController<ListView> {
    protected override void OnActivated() {
        base.OnActivated();
        SecurityStrategy securityStrategy = Application.GetSecurityStrategy();
        foreach (IPermissionPolicyUser user in ObjectSpace.GetObjects<ApplicationUser>()) {
            if (securityStrategy.CanDeleteByUser(user, View.ObjectTypeInfo.Type)) {
                // ...
            }
        }
    }
}
See Also