Ausgabecache ist in ASP.NET MVC2 mithilfe des folgenden Codes implementiert.Warum GetVaryByCustomString nicht aufgerufen wird
GetVaryByCustomString
Methode wird nicht aufgerufen: Haltepunkt in die erste Zeile setzen und laufende Anwendung zeigt, dass der Haltepunkt nicht erreicht wird. Breakpoint im Controller Index() ist erreicht.
Wie wird VaryByCustom
in ASP.NET MVC2 verwendet?
Controller:
[OutputCache(VaryByCustom = "user")]
public ActionResult Index(string _entity, string id)
{
...
Global.asax.cs:
public class MvcApplication : System.Web.HttpApplication
{
public override string GetVaryByCustomString(HttpContext context, string arg)
{
if (arg == "user")
{
HttpCookie cookie = context.Request.Cookies["Company"];
if (cookie != null)
return Thread.CurrentPrincipal.Identity.Name + "," + cookie.Value;
return Thread.CurrentPrincipal.Identity.Name;
}
return base.GetVaryByCustomString(context, arg);
}
}
Vielen Dank. Nach dem Hinzufügen dieser Vary: * Header wird an den Browser gesendet und dies deaktiviert den Browser-Cache. Wie kann ich den Browser-Cache mit VaryByCustom aktivieren? – Andrus