5
Me pregunto si es posible conseguir este trabajo:enfoque minimalista LINQ - System.NullReferenceException
product.PrimaryImage = db.ProductImages
.Where(p => p.Product.ID == product.ID)
.OrderBy(p => p.Order ?? 999999)
.ThenBy(p => p.ID)
.FirstOrDefault()
.Name;
db.SaveChanges();
Funciona hasta que no haya más imágenes de ese producto en ese momento se lanza ...
System.NullReferenceException: Object reference not set to an instance of an object.
Hice una corrección, pero preferiría mantenerlo lo más bajo posible y quedarme en Linq, así que esperaba que hubiera una manera de hacer funcionar mi declaración inicial.
La fea solución:
ProductImages primaryProductImage = db.ProductImages.Where(p => p.Product.ID == product.ID).OrderBy(p => p.Order ?? 999999).ThenBy(p => p.ID).FirstOrDefault();
string primaryImage = (primaryProductImage != null) ? primaryProductImage.Name : null;
product.PrimaryImage = primaryImage;
db.SaveChanges();
funciona perfectamente. Muchas gracias dtb. – Oppdal