获取证书时出现异常

本文关键字:异常 证书 获取 | 更新日期: 2023-09-27 18:36:44

当我尝试在下面的代码行中使用First时,我遇到了一个未经处理的异常。

X509Certificate2 cert = store.Certificates.Cast<X509Certificate2>()
                                          .First(item => item.FriendlyName =="myfriendlyname");

我什至尝试了FirstOrDefaultSingleSingleOrDefault,并得到了

未处理的异常系统。应用程序空异常:值不能为 零。

请帮我解决同样的问题。

获取证书时出现异常

试试这个:

X509Certificate2 cert = store.Certificates.Cast<X509Certificate2>().Where(item => item.FriendlyName =="myfriendlyname").FirstOrDefault();

当您尝试访问查询的第一个元素时,如果它不存在,则会引发异常。您应该修改代码并使用 FirstOrDefault 方法。当查询结果为空时,结果将为 null。然后,您可以验证结果是否为空。

var cert = store.Certificates.Cast<X509Certificate2>().Where(item => item.FriendlyName =="myfriendlyname").FirstOrDefault();
if(cert != null)
{
   sth;
}