我正在使用ASP.NET MVC框架并使用实体访问数据库记录。 我正在做这样的连接:
public IQueryable<...> GetThem()
{
var ords = from o in db.Orders
join c in db.Categories on o.CategoryID equals c.ID
select new {Order=o, Category=c};
return ords;
}
我需要以强类型的方式使用/从一个函数传递'ords'到另一个函数。 (我将在多个地方进行这种连接。)
最好的方法是什么? 我是否需要为每个连接创建一个包含两个返回值的新类? 例如:公共类OrderAndCategory {public Order;公共类别;在这种情况下。
有没有更简单的方法?
谢谢!
答案 0 :(得分:0)
表示ords
中数据的类是强类型的,它由编译器生成。如果编译器为查询的不同实例生成不同的类,但具有相同的类型,则可能会遇到问题。你必须检查一下。如果是这种情况,则必须为每个不同的查询创建类,或者使用类Tuple<Targs...>
代替。