gpt4 book ai didi

C#:如何查看 Linq2SQL 实体是否在数据库中

转载 作者:太空狗 更新时间:2023-10-29 23:27:56 25 4
gpt4 key购买 nike

我想检查一个实体是否已经添加到数据库中。那么,如何才能看出 ab 之间的差异呢?

var a = dataContext.Things.First(x => x.Name == something);
var b = new Thing { Name = something };

为了更清楚,如果我有这个:

var thing = dataContext.Things.FirstOrDefault(x => x.Name == something) 
?? new Thing { Name = something };

如何查看是否需要插入 thing

最佳答案

如果您使用 FirstOrDefault 而不是 First,如果没有匹配项,将返回 null

至于是否需要插入 - 只需记住它是否以 null 开头:

var a = dataContext.Things.FirstOrDefault(x => x.Name == something);
bool needsInsertion = (a == null);
a = a ?? new Thing { Name = something };

或者,如果 Thing 中有一个由数据库自动填充的 ID 字段,您可以只使用它来检测它是否已经在数据库中。

关于C#:如何查看 Linq2SQL 实体是否在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/938410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com