using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
|
namespace CY.Infrastructure.Cache
|
{
|
public class MemCachedStrategy : ICacheStrategy
|
{
|
/// <summary>
|
/// 添加指定ID的对象
|
/// </summary>
|
/// <param name="objId"></param>
|
/// <param name="o"></param>
|
public void AddObject(string objId, object o)
|
{
|
RemoveObject(objId);
|
if (TimeOut > 0)
|
{
|
MemCachedManager.Set(objId, o, System.DateTime.Now.AddMinutes(TimeOut));
|
}
|
else
|
{
|
MemCachedManager.Set(objId, o);
|
}
|
}
|
/// <summary>
|
/// 添加指定ID的对象(关联指定文件组)
|
/// </summary>
|
/// <param name="objId"></param>
|
/// <param name="o"></param>
|
/// <param name="files"></param>
|
public void AddObjectWithFileChange(string objId, object o, string[] files)
|
{
|
throw new NotImplementedException();
|
}
|
/// <summary>
|
/// 添加指定ID的对象(关联指定键值组)
|
/// </summary>
|
/// <param name="objId"></param>
|
/// <param name="o"></param>
|
/// <param name="dependKey"></param>
|
public void AddObjectWithDepend(string objId, object o, string[] dependKey)
|
{
|
throw new NotImplementedException();
|
}
|
/// <summary>
|
/// 移除指定ID的对象
|
/// </summary>
|
/// <param name="objId"></param>
|
public void RemoveObject(string objId)
|
{
|
if (MemCachedManager.IsExists(objId))
|
MemCachedManager.Delete(objId);
|
}
|
/// <summary>
|
/// 返回指定ID的对象
|
/// </summary>
|
/// <param name="objId"></param>
|
/// <returns></returns>
|
public object RetrieveObject(string objId)
|
{
|
return MemCachedManager.Get(objId);
|
}
|
/// <summary>
|
/// 到期时间
|
/// </summary>
|
public int TimeOut { get; set; }
|
}
|
}
|