我看到一些使用C#.NET针对var类型测试null值的奇怪行为
这是一些示例代码.
// locate user in cache
var user = GWUsers.Instance.Users.Where(u => u.EmailAddress == emailAddress).FirstOrDefault();
if (user != null)
{
}
Run Code Online (Sandbox Code Playgroud)
当用户包含空值时,将抛出异常,指示"未设置对象引用".
GWUsers是一个单例,用于存放存储在XML文件中的用户列表.在整个应用程序中使用了同样的代码,但在这个实例中,它在针对null进行求值时抛出异常.
任何想法为什么会这样?
感谢对此的任何见解.
谢谢