Skip to main content
.NET 6.0+

IsGrantedExtensions.CanDelete<T>(SecurityStrategy, IObjectSpace, Object) Method

Checks whether the current user can delete an object with the specified key.

Namespace: DevExpress.ExpressApp.Security

Assembly: DevExpress.ExpressApp.Security.v24.1.dll

Declaration

public static bool CanDelete<T>(
    this SecurityStrategy security,
    IObjectSpace objectSpace,
    object targetObjectKey
)

Parameters

Name Type Description
security SecurityStrategy

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

objectSpace IObjectSpace

An Object Space this method uses to get an object to check.

targetObjectKey Object

An Object that is a key of an object this method checks.

Type Parameters

Name Description
T

A Type of an object this method checks.

Returns

Type Description
Boolean

true, if the current user can delete an object with the specified key; otherwise, false.

Remarks

The following example shows how to use this method.

using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Security;
using System;
// ...
public class CheckDeletePermissionController : ObjectViewController<ListView, Contact> {
    SecurityStrategy securityStrategy;
    protected override void OnActivated() {
        base.OnActivated();
        securityStrategy = Application.GetSecurityStrategy();
        View.CurrentObjectChanged += View_CurrentObjectChanged;
    }
    private void View_CurrentObjectChanged(object sender, EventArgs e) {
        Department department = ViewCurrentObject.Department;
        if (department != null) {
            object key = ObjectSpace.GetKeyValue(department);
            if (!securityStrategy.CanDelete<Department>(ObjectSpace, key)) {
                // ...
            }
        }
    }
}
See Also