1

我有一个网页,它正在实现基于 cookie 的 ASPNET 表单身份验证。

一旦用户登录了页面,他就可以使用一个表单来编辑一些信息,该表单是使用部分视图创建的,并作为一个对话框返回给他进行编辑。链接到局部视图的动作装饰如下:

[HttpGet]
[OutputCache(Duration = 0, VaryByParam = "None")]
[Authorize(Roles = "test")]
public ActionResult changeTripInfo(int tripID, bool ovride=false) 
{
     ...
}

我遇到的问题是请求和向用户显示对话框的时间之间的延迟:时间范围在 800 到 1100 毫秒之间,这与表单的复杂性无关。

用 Glimpse 进行调查发现,处理AuthorizeAttribute(见片段)的时间总计至少 650 毫秒,这让我感到不安。查看 Sql 服务器日志,检查用户角色的调用,正如预期的那样,几乎没有任何内容(持续时间 0)。我怎样才能减少这个时间?

我错过了一些优化吗?
或者我应该假设这是执行属性的正常持续时间(我不能在不同的服务器上运行无偏见的测试)?

时间表报告 -EDIT- 添加了 Sql server 调用日志

Sql 服务器日志

4

1 回答 1

1

这是您的表单和持有您的凭据的 SQL Db 之间的身份验证时间吗?

于 2012-06-03T17:03:01.963 回答