【问题标题】:Cant get default method from MemoryCache when set as a class property设置为类属性时无法从 MemoryCache 获取默认方法
【发布时间】:2016-03-04 09:37:44
【问题描述】:
我试图避免这种情况:
private ObjectCache cache = MemoryCache.Default
通过创建一个类:
public static class MemoryDefault
{
public static MemoryCache Memory { get; set; }
}
调用 MemoryDefault.Memory.Default 时
不存在,为什么?
【问题讨论】:
标签:
c#
asp.net
asp.net-mvc
memorycache
【解决方案1】:
您的属性 public static MemoryCache Memory { get; set; } 未在任何地方初始化 - 所以它将始终为 null..
应该是:
public static class MemoryDefault
{
static MemoryDefault()
{
Memory = MemoryCache.Default;
}
public static MemoryCache Memory { get; private set; }
//private set for preventing user to change that value
}
其他方法:
public static class MemoryDefault
{
public static MemoryCache Memory { get { return MemoryCache.Default; } }
}