我有这个疑问在SQL Server:实体框架和联合声明
SELECT 'QueueA', COUNT(*) FROM QueueA_Table
UNION
SELECT 'QueueB', COUNT(*) FROM QueueB_Table
我该怎么做实体框架的相同呢?我能做的最好的是:
using (var db = new dbContext())
{
return new QueueCount[] {
new QueueCount("QueueA", db.QueueA_Table.Count()),
new QueueCount("QueueB", db.QueueB_Table.Count())
};
}
但是,根据LINQPad,这会导致两个单独的查询到数据库。
SELECT COUNT(*) AS [value]
FROM [QueueA_Table] AS [t0]
GO
SELECT COUNT(*) AS [value]
FROM [QueueB_Table] AS [t0]
有没有办法写它,只有一个查询被发送到数据库?
您可以试试将来的查询。 https://github.com/loresoft/EntityFramework.Extended –