我必须在listview
项目上显示数据,因此我有以下代码:
public IQueryable mostrarMesas()
{
var query = from area in db.res_areas_sucursal
join mesa in db.res_mesas_sucursal on area.area_gkey equals mesa.area_gkey
select mesa;
return query;
}
这会连接两个表数据并返回我需要的数据,但是我需要显示两个表中的数据,我尝试创建这个我觉得有我需要的模型
public class Mesas
{
[Key]
public long? mesa_gkey { get; set; }
public String descripcion_mesa { get; set; }
public res_areas_sucursal res_areas_sucursal { get; set; }
public int total_capacidad { get; set; }
public bool disponible_para_reserva { get; set; }
}
但我不知道如何分配查询以返回Mesas
个对象的列表,而不是实体框架中的对象。我正在使用ASP.NET Webforms 4.5
我怎么能这样做?
我应该首先在数据库上建立关系吗?
答案 0 :(得分:1)
您可以使用匿名类型:
var query = from area in db.res_areas_sucursal
join mesa in db.res_mesas_sucursal on area.area_gkey equals mesa.area_gkey
select new Mesas()
{
mesa_gkey = mesa.gkey,
// continue the rest
};
return query;
或者您可以使用您的模型:
area
在select中,您可以同时使用mesa
和IQueryable<Mesas>
。然后,您可以选择所需的任何属性(列)并进行分配。
请注意,最好返回IQueryable
而不是{{1}},除非您有正当理由不这样做。