我有一个动态制作的大量查询,但我希望select语句不输出列名,而是自定义值。举个例子,如果我正在进行正常的Linq查询,我可以这样做:
var v = from p in db.items select new { name = p.item_name, price = p.item_price };
这会给我很好的'.name'和'.price'访问者
但如果我使用Dyanmic Linq,我可以这样做:
var v = db.items.Select("new (item_name,item_price)");
工作正常,但
var v = db.items.Select("new (name=item_name,price=item_price)");
我收到错误: “类型'项目'中没有属性或字段'名称'”
可以这样做吗?
答案 0 :(得分:4)
var v = db.items.Select("new (item_name as name,item_price as price)");
答案 1 :(得分:1)
你也可以试试这个。
var v = db.items.Select("new(it[\"item_name\"] as name,it[\"item_price\"] as price)");