C# 我可以使用OwinContext在单个ASP.NET MVC5应用程序之间共享数据吗?

C# 我可以使用OwinContext在单个ASP.NET MVC5应用程序之间共享数据吗?,c#,asp.net-mvc,owin,C#,Asp.net Mvc,Owin,我希望在所有应用程序请求中共享特定的静态数据(尤其是站点菜单DTO)。在旧的system.web.dlldays中,将Application\u Start中的数据添加到HttpContent.Current.Application[]字典中。我相信Owin/OWINCOTEXT也可以实现类似的效果,但无法找到添加/访问它的简单方法。有人能帮忙吗?Microsoft.AspNet.Identity.Owin库包含类owincontextensions,该类具有以下方法: public stati

我希望在所有应用程序请求中共享特定的静态数据(尤其是站点菜单DTO)。在旧的
system.web.dll
days中,将
Application\u Start
中的数据添加到
HttpContent.Current.Application[]
字典中。我相信Owin/OWINCOTEXT也可以实现类似的效果,但无法找到添加/访问它的简单方法。有人能帮忙吗?

Microsoft.AspNet.Identity.Owin库包含类
owincontextensions
,该类具有以下方法:

public static T Get<T>(this IOwinContext context)
{
  if (context == null)
  {
    throw new ArgumentNullException("context");
  }
  return context.Get<T>(OwinContextExtensions.GetKey(typeof(T)));    
}


public static T Set<T>(this IOwinContext context, T value)
{
  if (context == null)
  {
    throw new ArgumentNullException("context");
  }
  return context.Set<T>(OwinContextExtensions.GetKey(typeof(T)), value);
}
public MyDictionary : Dictionary<string, int>
{
}

var myDic = new MyDictionary();

var context = HttpContext.GetOwinContext();

context.Set(myDic);

var myDic2 = context.Get<MyDictionary>();