虽然返回值不为null,但我在
处捕获到了NullReferenceExceptionvar currentTakipciler = TwitterCacheDepo.GetTakipciler(TemaUserID)
我看了调试中的返回值,它不是null但我得到nullreferenceexception。
try
{
var currentTakipciler = TwitterCacheDepo.GetTakipciler(TemaUserID);
}
catch (Exception ex)
{
Utils.LogYaz(ex.ToString());
}
public class TwitterCacheDepo
{
...
...
public static Dictionary<int, string> GetTakipciler(string TemaUserID)
{
try
{
Dictionary<int, string> returnValue = new Dictionary<int, string>();
if (allTakipciler != null && allTakipciler.Rows.Count > 0)
{
returnValue = allTakipciler.AsEnumerable().Where(x => x.Field<DateTime?>("BitTarih").Equals(null) && x.Field<string>("TemaUserID").Equals(TemaUserID)).ToDictionary(x => x.Field<int>("ID"), y => y.Field<string>("UserID"));// SqlDataBase.SqlGetTable("SELECT ID,TemaUserID,UserID,BitTarih FROM TBL_TwitterUserTakipciler WHERE BitTarih IS NULL SID = " + 4663);
return returnValue;
}
else
{
allTakipciler = SqlDataBase.SqlGetTable("SELECT ID,TemaUserID,UserID,BitTarih FROM TBL_TwitterUserTakipciler WHERE SID = " + 4663);
return allTakipciler.AsEnumerable().Where(x => x.Field<DateTime?>("BitTarih").Equals(null) && x.Field<string>("TemaUserID").Equals(TemaUserID)).ToDictionary(x => x.Field<int>("ID"), y => y.Field<string>("UserID"));
}
}
catch (Exception ex)
{
Utils.LogYaz(ex.Message.ToString());
return null;
}
}
}
答案 0 :(得分:2)
您需要查看完整堆栈跟踪并检查引发空引用异常的确切行号。这将清楚地表明发生了什么。
要在不使用调试器的情况下获得堆栈跟踪运行,因为正如您所说,使用调试器无法重现问题。