目前在我的项目中,我遇到了一个问题,即在请求数据时两种情况之间没有区别:
在两种情况下方法:
object Get(string key)
Member of Enyim.Caching.IMemcachedClient
返回null。我希望在第二种情况下发现例外情况,以区分这两种情况。
对于SocketPool
receiveTimeout
设置为{00:00:01}
,但即使过期,也不会像我预期的那样抛出异常。你能建议吗?
答案 0 :(得分:1)
MemcachedClient
实现了两个接口:IMemcachedClient
和IMemcachedResultsClient
。 IMemcachedClient
上的每个基本方法在另一个接口上都有一个等效的ExecuteXXX
方法,可以返回更详细的结果。
你可以这样做:
var result = client.ExecuteGet<MyType>(key);
结果将是IGetOperationResult
,您可以查询各种状态代码,或获取日志或其他内容的消息。
由于您指定的原因,我倾向于总是更喜欢ExecuteXXX()
cals而不是更简单的XXX()
cals,即使使用它们可能需要更多代码。