[英]chek if value of data is null c#
我正在尝试获取记录并将数据存储到变量中
Image Image = _context.Images.FirstOrDefault(u => u.imgID== Images.imgID);
var ImageName = Image.Name;
我收到这个错误。 可能是 null 记录在案。
System.NullReferenceException: 'Object reference not set to an instance of an object.'
<Image>5__11 was null.
我正在尝试做 null 检查,但可能我做错了什么
if (Image == null || Image.ImageName == null) Image.ImageName = "";
但是我遇到了同样的错误。 我怎样才能解决这个问题?
大卫,
当您使用FirstOrDefault
时,这意味着如果它在您的_context.Images
集合中找不到任何符合您的条件的项目,它将返回 null。 因此,因此在您的第一行中,想象它会导致以下结果:
Image Image = null;
这意味着第二行将返回NullReferenceException
,因为您实际上是在代码中执行此操作:
var ImageName = null.Name; // YOU CAN'T ACCESS the Name property because the Image was null!
这有意义吗? 为避免 NullReferenceException,您应始终在尝试访问其属性之前检查 null。 像这样:
Image Image = _context.Images.FirstOrDefault(u => u.imgID== Images.imgID);
if (Image != null)
{
var ImageName = Image.Name;
}
你可以做简单的 null 检查如下:
Image Image = _context.Images.FirstOrDefault(u => u.imgID== Images.imgID);
// If Image is not null, then use Image.Name, else when it is null, then assing empty string.
var ImageName = Image != null ? Image.Name : String.Empty;
还取决于您所在的 function,但您可以使用称为 Null 防护装置的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.