我使用EF 6.我有一个产品基类。我使用SqlQuery但我也需要子类字段。我怎么能这样做?
public class Product{
public int ProdId{get;set;}
public string ProdName{get;set;}
}
public MySubProd1:Product{
public string MySubProd1{get;set;}
}
public MySubProd2:Product{
public string MySubProd2{get;set;}
}
public DbRawSqlQuery<Product> GetSql(int prodId,string[] fields)
{
var sql = "SELECT {0} FROM Products WHERE ProdId={1}";
//i need here MySubProd1, MySubProd2 fields too
return _db
.Database
.SqlQuery<Product>(sql, String.Join(",", fields), prodId);
}
答案 0 :(得分:0)
使用EF,您只需执行此操作:
var query = from p in context.Products.OfType<MySubProd2>() select p;
有关如何构建模型的详细信息,请参阅this文章。