Я хочу отобразить некоторые данные из HttpContext.Current.Cache через частичное представление _CacheData.cshtml на моей странице ASP.NET MVC _Layout.cshtml.Я написал оболочку ICacheManager, чтобы добавить ее в мои контроллеры.ICacheManager также имеет свою собственную зависимость от IFooRepository
public class CacheManager : ICacheManager
{
public CacheManager(IFooRepository repo, System.Web.Caching.Cache cache)
{ ... }
}
Я использую пакет Ninject.MVC3 nuget, поэтому вот мой RegisterServices
private static void(IKernel kernel)
{
kernel.Bind<IFooRepository>().To<FooRepository>();
kernel.Bind<ICacheManager>().To<CacheManager>().WithConstructorArgument("cache", x => HttpContext.Current.Cache);
}
Это прекрасно работает для моих контроллеров, но какЛи я вводить CacheManager
в частичное представление?Там нет контроллера для _CacheData.cshtml.Я могу получить CacheManager
в базовом контроллере и поместить его в ViewBag, но это не так.Предложения?