当我尝试在下面的代码行中使用First
时,我收到了一个未处理的异常。
X509Certificate2 cert = store.Certificates.Cast<X509Certificate2>()
.First(item => item.FriendlyName =="myfriendlyname");
我甚至尝试了FirstOrDefault
,Single
和SingleOrDefault
并获得了
Unhandled Exception System.ApplicationNullException:value不能 空。
请帮我解决问题。
答案 0 :(得分:-1)
试试这个:
X509Certificate2 cert = store.Certificates.Cast<X509Certificate2>().Where(item => item.FriendlyName =="myfriendlyname").FirstOrDefault();
答案 1 :(得分:-1)
当您尝试访问查询的第一个元素时,如果它不存在,则抛出异常。您应该修改您的代码并使用FirstOrDefault方法。当查询结果为空时,结果将为null。然后,您可以验证结果是否为空。
var cert = store.Certificates.Cast<X509Certificate2>().Where(item => item.FriendlyName =="myfriendlyname").FirstOrDefault();
if(cert != null)
{
sth;
}