Несмотря на то, что нет встроенного способа их одновременного использования, вы можете написать свой класс-обертку, который извлекает всю информацию из обеих частей, например:
class Information
{
public string UserName { get { return this.GetFromSession("UserName"); } }
public string WebSiteName { get { return this.GetFromCache("WebSiteName"); } }
private string GetFromSession(string key)
{ /* get information from session */ }
private string GetFromCache(string key)
{ /* get information from cache */}
}
И тогда вы можете просто использовать:
Information info = new Information();
Response.Write(info.UserName);
Response.Write(info.WebSiteName);
Помогает ли это?