In OutputCache, set VaryByCustom="Language" and update the Global.asax file to override the HttpApplication.GetVaryByCustomString method by adding the following code:
public override string GetVaryByCustomString(HttpContext context, string custom) { if (custom.Equals("Language")) { return System.Threading.Thread.CurrentThread.CurrentUICulture.TwoLetterISOLanguageName; } else { return base.GetVaryByCustomString(context, custom); } }
This code will make the parameter the cache depends on is your page culture.
source share