我有一个具有中间层架构的应用程序。.net 框架 4.0 和 devexpress 版本 13.2.8。
我正在创建一个新角色并将其分配给用户,当该用户登录时,登录大约需要 20 到 60 秒。但是,如果其他具有管理员角色的用户登录则需要 1 秒。这种行为在 Listview、查找对象等其他功能中也很常见。
您能否向我们指出一些信息以查看有关此主题的信息。
我有一个具有中间层架构的应用程序。.net 框架 4.0 和 devexpress 版本 13.2.8。
我正在创建一个新角色并将其分配给用户,当该用户登录时,登录大约需要 20 到 60 秒。但是,如果其他具有管理员角色的用户登录则需要 1 秒。这种行为在 Listview、查找对象等其他功能中也很常见。
您能否向我们指出一些信息以查看有关此主题的信息。
这可能有很多原因,但我猜这可能是因为管理员不需要检查 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);
}