Skip to main content
A newer version of this page is available. .
.NET Framework 4.5.2+

IsGrantedExtensions.CanDeleteByRole(SecurityStrategy, IPermissionPolicyRole, Object) Method

Checks whether the specified role allows deleting the specified object.

Namespace: DevExpress.ExpressApp.Security

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

Declaration

public static bool CanDeleteByRole(
    this SecurityStrategy security,
    IPermissionPolicyRole targetRole,
    object targetObject
)

Parameters

Name Type Description
security SecurityStrategy

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

targetRole IPermissionPolicyRole

An IPermissionPolicyRole object that is a role this method checks.

targetObject Object

An Object this method checks.

Returns

Type Description
Boolean

true, the specified role allows deleting the specified object; 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 CheckDeletePermissionController : ViewController<ListView> {
    SecurityStrategy securityStrategy;
    protected override void OnActivated() {
        base.OnActivated();
        securityStrategy = Application.GetSecurityStrategy();
        View.CurrentObjectChanged += View_CurrentObjectChanged;
    }
    private void View_CurrentObjectChanged(object sender, EventArgs e) {
        foreach (IPermissionPolicyRole role in ObjectSpace.GetObjects<PermissionPolicyRole>()) {
            if (!securityStrategy.CanDeleteByRole(role, View.CurrentObject)) {
                // ...
            }
        }
    }
}
See Also