MemoryCache.Set 方法

定义

将某个缓存项插入缓存中。

重载

Set(CacheItem, CacheItemPolicy)

使用 CacheItem 实例将某个缓存项插入缓存中,以便为该缓存项提供键和值。

Set(String, Object, DateTimeOffset, String)

使用键和值将某个缓存项插入缓存中,并指定基于时间的过期详细信息。

Set(String, Object, CacheItemPolicy, String)

通过使用键、值和逐出设置,将某个缓存项插入缓存中。

注解

如果指定的条目不存在,则会创建它。 如果指定的条目存在,则更新它。

Set(CacheItem, CacheItemPolicy)

Source:
MemoryCache.cs
Source:
MemoryCache.cs
Source:
MemoryCache.cs

使用 CacheItem 实例将某个缓存项插入缓存中,以便为该缓存项提供键和值。

public:
 override void Set(System::Runtime::Caching::CacheItem ^ item, System::Runtime::Caching::CacheItemPolicy ^ policy);
public override void Set (System.Runtime.Caching.CacheItem item, System.Runtime.Caching.CacheItemPolicy policy);
override this.Set : System.Runtime.Caching.CacheItem * System.Runtime.Caching.CacheItemPolicy -> unit
Public Overrides Sub Set (item As CacheItem, policy As CacheItemPolicy)

参数

item
CacheItem

表示要插入的缓存项的对象。

policy
CacheItemPolicy

一个包含该缓存项的逐出详细信息的对象。 此对象提供比简单绝对过期更多的逐出选项。

例外

itemnull

- 或 -

Key 属性为 null

- 或 -

Value 属性为 null

为高速缓存项传递了无效的参数组合。 如果缓存项的策略对象上设置了以下过期详细信息,将发生这种情况:

SlidingExpiration 属性设置为一个小于 Zero 的值。

- 或 -

SlidingExpiration 属性设置为大于一年的值。

- 或 -

Priority 不是 CacheItemPriority 枚举的值。

注解

与其他 Set 方法重载一样, Set 方法始终在缓存中放置缓存值,而不考虑是否存在具有相同键的条目。 如果缓存中不存在指定的项,则会插入新的缓存条目。 如果指定的条目已存在,则更新其值。

适用于

Set(String, Object, DateTimeOffset, String)

Source:
MemoryCache.cs
Source:
MemoryCache.cs
Source:
MemoryCache.cs

使用键和值将某个缓存项插入缓存中,并指定基于时间的过期详细信息。

public override void Set (string key, object value, DateTimeOffset absoluteExpiration, string regionName = default);
override this.Set : string * obj * DateTimeOffset * string -> unit
Public Overrides Sub Set (key As String, value As Object, absoluteExpiration As DateTimeOffset, Optional regionName As String = Nothing)

参数

key
String

要插入的缓存项的唯一标识符。

value
Object

该缓存项的数据。

absoluteExpiration
DateTimeOffset

缓存项的固定的过期日期和时间。

regionName
String

缓存中的一个可向其添加缓存项的命名区域。 不要为该参数传递值。 默认情况下,此参数为null,因为 MemoryCache 类未实现区域。

例外

regionName 不是 null

keynull

Valuenull

SlidingExpiration 属性设置为一个小于 Zero 的值。

- 或 -

SlidingExpiration 属性设置为大于一年的值。

- 或 -

注解

与其他 Set 方法重载一样, Set 方法始终将缓存值放入缓存中,而不考虑是否存在具有相同键的条目。 如果指定的条目不存在,则插入新的缓存条目。 如果指定的条目存在,则更新它。

参数 absoluteExpiration 指示何时应从缓存中删除条目。

删除条目会触发任何关联的更改监视器。 如果已删除的项与一个或多个 CacheItemUpdateCallbackCacheItemRemovedCallback 对象相关联,则传递到回调的删除原因包含在 属性 Removed 中。

适用于

Set(String, Object, CacheItemPolicy, String)

Source:
MemoryCache.cs
Source:
MemoryCache.cs
Source:
MemoryCache.cs

通过使用键、值和逐出设置,将某个缓存项插入缓存中。

public override void Set (string key, object value, System.Runtime.Caching.CacheItemPolicy policy, string regionName = default);
override this.Set : string * obj * System.Runtime.Caching.CacheItemPolicy * string -> unit
Public Overrides Sub Set (key As String, value As Object, policy As CacheItemPolicy, Optional regionName As String = Nothing)

参数

key
String

要插入的缓存项的唯一标识符。

value
Object

该缓存项的数据。

policy
CacheItemPolicy

一个包含该缓存项的逐出详细信息的对象。 此对象提供比简单绝对过期更多的逐出选项。

regionName
String

缓存中的一个可向其添加缓存项的命名区域。 不要为该参数传递值。 默认情况下,此参数为null,因为 MemoryCache 类未实现区域。

例外

keynull

- 或 -

valuenull

- 或 -

已传递给 UpdateCallback 属性中的帮助程序方法的回调引用为 null

SlidingExpiration 属性设置为一个小于 Zero 的值。

- 或 -

SlidingExpiration 属性设置为大于一年的值。

- 或 -

Priority 属性不是 CacheItemPriority 枚举的值。

regionName 不是 null

注解

与其他 Set 方法重载一样, Set 方法始终将缓存值放入缓存中,而不考虑匹配项是否已存在。 如果缓存中不存在指定的项,则会插入新的缓存条目。 如果指定的条目存在,则更新它。

删除条目会触发任何关联的更改监视器。 如果已删除的项与一个或多个 CacheItemUpdateCallbackCacheItemRemovedCallback 对象相关联,则传递到回调的删除原因包含在 属性 Removed 中。

适用于