我有这个 Linq 表达式 (FirstOrDefault),它非常慢。 选项是一个 DbSet
DbOption dbo = ctx.Options.FirstOrDefault(o =>
o.SynN == oLoaded.SynN &&
o.OwnerId == oLoaded.OwnerId &&
o.Context == oLoaded.Context);
有什么方法可以更快地找到我的选项?我看到了“表达式”,但如何在表达式中转换此 Linq 代码?我从来没有用过它。
感谢支持
如果记录太多,您可以创建索引以提高对数据库的查询性能
CREATE NONCLUSTERED INDEX [IX_Options_SynN_OwnerId_Context] ON [dbo].[Options]
(
[SynN] ASC,
[OwnerId] ASC,
[Context] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
GO