如何将“select 1,2”之类的查询(即没有FROM子句)翻译成LINQ语句?
谢谢!
我需要获取一组用户组的权限。在SQL中它看起来像
SELECT *
FROM Permission p
INNER JOIN (SELECT GroupID
FROM [Group]
UNION ALL
SELECT 555) AS g
ON (g.GroupID = p.GroupID)
在我的情况下,我需要以编程方式添加某个代码而不是“555”。我不想为此编写特殊的SQL函数。
答案 0 :(得分:3)
我猜你只想创建一个匿名类型
var anonymous = new { Column1 = 1, Column2 = 2 };
编辑 - 基于评论
根据您Select
投影的内容,您可以执行以下简单操作:
如果是Int
:
var query = (from per in context.permissions
select per).AsEnumerable()
.Concat( new int[] { 1, 2 });
如果是“班级”
var query = (from per in context.permissions
select per).AsEnumerable()
.Concat(new CustomClass[]
{
new CustomClass()
{
Prop1= 1
},
}
);
您也可以将.Concat
更改为.Union
答案 1 :(得分:1)
为什么你需要这个是linq?
var numbers = new int[] { 1, 2 };
我想
var numbers = Enumerable.Range(1,2);