通用方法总是返回NULL [关闭]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通用方法总是返回NULL [关闭]相关的知识,希望对你有一定的参考价值。
我在我的项目中有一个通用方法(已由另一个开发人员开发)用于获取缓存;虽然我有键的值,该方法仍然返回NULL
。
请看一下代码:
public static C GetFromCache<C>(string key) where C : class
{
if (cache != null)
{
var testCache = cache.Get(key); // This variable is getting results
C p = cache.Get(key) as C; this point value of 'p' is NULL
return p;
}
return null;
}
方法调用:
var lstCheck = ClassName.GetFromCache< List< int >(key);
答案
发生这种情况是因为cache.Get(key)
的结果不是C类型。让我用代码解释一下:
Object name = "my-name";
var nameAsString = name as String; // name is already a String, so nameAsString = "my-name"
var nameAsRandom = name as Random; // name isn't Random, so nameAsRandom == null
最好,
以上是关于通用方法总是返回NULL [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
为啥 fusedLocationProviderClient.getLast 位置总是返回 null?