C# 在Enyim.Caching(版本2.11.0.0)上使用到期时无法获得结果
resultobj总是返回null,为什么C# 在Enyim.Caching(版本2.11.0.0)上使用到期时无法获得结果,c#,.net,caching,memcached,enyim,C#,.net,Caching,Memcached,Enyim,resultobj总是返回null,为什么 如果expire设置为TimeSpan.MaxValue,则可以。代码看起来不错。我对此进行了测试,结果通过了 var config = new MemcachedClientConfiguration(); config.Protocol = MemcachedProtocol.Binary; config.AddServer(server[0],int.Parse(server[1])); var mc = new MemcachedClien
如果expire设置为TimeSpan.MaxValue,则可以。代码看起来不错。我对此进行了测试,结果通过了
var config = new MemcachedClientConfiguration();
config.Protocol = MemcachedProtocol.Binary;
config.AddServer(server[0],int.Parse(server[1]));
var mc = new MemcachedClient(config);
var finish = mc.Store(StoreMode.Set, key, value,TimeSpan.FromSeconds((double)60000));
if(finish)
{
var obj=mc.Get(key);
Debug.Assert(obj==null,"obj is null.")
}
因此,我怀疑配置,这里是我用于比较的配置
[Test]
public void Should_get_object()
{
const string key = "1";
const string value = "6";
var mc = new MemcachedClient();
var finish = mc.Store(Enyim.Caching.Memcached.StoreMode.Set,
key, value, TimeSpan.FromSeconds((double)60000));
if(finish)
{
var obj=mc.Get(key);
Assert.That(obj!=null,"obj is null.");
}
}
这里有一个重复的问题,谢谢。这是memcached服务器的错误。我的memcached服务器无法获得正确的日期时间,因此它是。
<enyim.com>
<memcached>
<servers>
<add address="127.0.0.1" port="11211"/>
</servers>
<socketPool minPoolSize="10" maxPoolSize="100"
connectionTimeout="00:00:10" deadTimeout="00:02:00"/>
</memcached>
</enyim.com>