1
我在我的控制器动作之上定义了OutputCache属性,以便服务器可以快速地为不同的用户提供相同的响应。它缓存了整个整个页面。我的意思是母版页也被缓存,如果我缓存了一个返回View()
的操作。因此,主页顶部的用户帐户信息会被每个用户共享。我只想缓存内容页面,而不是主页面_Layout.cshtml。我怎样才能排除这一点?服务器上的OutputCache
编辑: 在那里我有麻烦的部分是这样的:
@if(Request.IsAuthenticated) {
<text>Hello <strong>@User.Identity.Name</strong>!</text>
@: |
@Html.ActionLink("Index", "Index", "Account")
@: |
@Html.ActionLink("Logout", "Logout", "Account")
}
else
{
@:|
@Html.ActionLink("Login", "Login", "Account")
}
当我缓存控制器动作,返回的视图也携带该用户登陆部分从缓存中,所以它给出错误的礼炮,以几乎每个用户。即使页面被缓存,我如何动态生成这个部分?
谢谢,我需要动态生成登录部分,但要缓存任何用户的主要内容。 – Halo