【发布时间】:2011-05-01 10:30:30
【问题描述】:
我有以下一句话:
var customers = from customer in Context.ps_customer
select customer;
如你所见,这是世界上最简单的一句话。好吧,它抛出了 NullReferenceException,我不知道为什么。实际上,异常是在
处抛出的List<ps_customer> clientes = customers.ToList<ps_customer>();
但如果我在 Linq 语句中设置断点并尝试查看客户价值,则会出现 NullReferenceException。
有人知道我为什么会得到这个异常吗?
编辑:我将提供更多信息:
MyEntityModel Context = new MyEntityModel();
var solicitudes = from solicitud in Context.ps_orders
where solicitud.date_add.Year == fecha.Year &&
solicitud.date_add.Month == fecha.Month &&
solicitud.date_add.Day == fecha.Day
select solicitud;
//This return correct data
ps_orders orden = solicitudes.ToList<ps_orders>().FirstOrDefault();
var customers = from customer in Context.ps_customer
where customer.id_customer == orden.id_customer
select customer;
var orden_detalles = from oDetalle in Context.ps_order_detail
where oDetalle.id_order == orden.id_order
select oDetalle;
var direcciones = from oDireccion in Context.ps_address
where oDireccion.id_address == orden.id_address_delivery
select oDireccion;
ps_address direccion = direcciones.FirstOrDefault(); //Correct data
List<ps_order_detail> detalles = orden_detalles.ToList<ps_order_detail>(); //Correct data
ps_customer clientes = customers.FirstOrDefault(); //NullReferenceException
我完全确定 ps_customer 有数据,具体是 2 行,我已经从 .edmx 中删除了 ps_customer 实体,然后我再次添加它,它仍然会发生
非常感谢!
编辑 2: 我已经复制了表的create语句,创建了一个名为customerTwo的新表,插入了新数据,它仍然失败......顺便说一句,我使用的是MySQL,数据库是由Prestashop创建的,以防万一信息很有用...
【问题讨论】:
标签: linq-to-entities nullreferenceexception