0
一个listedItem可以是设备和车辆的父对象。我想要包含子类的属性,具体取决于子类的类型是什么类型的对象。Linq包含子对象属性
var type = GetAllQuery(context).FirstOrDefault(x => x.Id == id);
var listedItem = GetAllQuery(context)
.Include(x => x.Images)
.Include(x => x.User);
if (type.GetType().BaseType == typeof(Vehicle))
{
var vehicle = listedItem as IQueryable<Vehicle>;
return vehicle.Include(x => x.VehicleBrand).Include(x => x.VehicleModel).FirstOrDefault(x => x.Id == id);
}
设备也一样。车辆由于某种原因返回空,我似乎无法找出原因。有任何想法吗?
感谢您的回答即时试图使其工作目前,我对泛型不太了解。直至现在,我改变这部分 '开关(typeof运算(T),请将.Name)' 我有在配置麻烦,因为它是说考虑使用一个明确的转换,而不是牛逼 –
mcas
所有错误: 的约束方法'Data.Repositories.VehicleConfigurator.Configure(System.Data.Entity.Core.Objects.ObjectQuery )'的类型参数'T'必须与接口方法'Data.Repositories.IConfigurator的类型参数'T'的约束匹配。配置(System.Data.Entity.Core.Objects.ObjectQuery )''。考虑使用显式接口实现。 –
mcas
请调查listedItem的类型并匹配configure的签名。代码只是一个想法。 – hungryMind