选择和鲜明与的DLinq
问题描述:
新对象,假设我有以下对象选择和鲜明与的DLinq
public class OrderInfo
{
public string OrderNo {get; set;}
public DateTime OrderDate {get; set;}
public decimal OrderAmount {get; set;}
public decimal OrderPrice {get; set;}
}
的列表作为
List<OrderInfo> data = new List<OrderInfo>();
和这个名单中有物品的必要数量。
我需要从此列表中选择不同的OrderNo,OrderDate对。在Linq我可以写一个查询为:
var q = (from x in data
group x by new { x.OrderNo, x.OrderDate }
into grp
select new
{
grp.Key.OrderNo,
grp.Key.OrderDate
}).Distinct();
事情是我正在写一个泛型方法,以便对象类型和属性是未知的。所以我必须用DLinq写这个。
如果我有一个List<T>
和string[] { "OrderNo", "OrderDate" }
的列表,我该如何在运行时将这个示例与DLinq一起使用?
答
这是我的错。我是谷歌搜索“DLinq”,但不是“动态LinQ”。其实答案是很简单:
var q = data.Select("new (OrderNo, OrderDate)").Distinct();
让那个对象从接口继承,然后设置类型约束类型必须从接口 –
这将帮助不大inherhit,因为这是一个广义的方法,该方法应该以任何类型运行。而这些类型并不意味着有任何共同点。 – user3021830