1

我有一个具有中间层架构的应用程序。.net 框架 4.0 和 devexpress 版本 13.2.8。

我正在创建一个新角色并将其分配给用户,当该用户登录时,登录大约需要 20 到 60 秒。但是,如果其他具有管理员角色的用户登录则需要 1 秒。这种行为在 Listview、查找对象等其他功能中也很常见。

您能否向我们指出一些信息以查看有关此主题的信息。

4

1 回答 1

0

这可能有很多原因,但我猜这可能是因为管理员不需要检查 IsGranted 权限请求。我建议您检查此方法如何影响您的性能。

例如,您会发现对 AuditDataItemPersistent 的权限请求检查可能很繁重且不必要,因此您可以覆盖 SecurityStrategyComplex 类并跳过它:

public override bool IsGranted(IPermissionRequest permissionRequest)
    {
        //Always grant for AuditDataItemPresistent for performance reasons.
        if (permissionRequest is ClientPermissionRequest)
            if (typeof(AuditDataItemPersistent).IsAssignableFrom(((ClientPermissionRequest)(permissionRequest)).ObjectType))
                return true;

        return base.IsGranted(permissionRequest);
    }
于 2014-11-18T16:04:46.977 回答