[英]ASP.NET Core Web API - FirstOrDefault not giving required result in Entity Framework
[英]Avoid entity duplication with Linq in ASP.NET Core Web API
我想知道在 ASP.NET 核心 Web API 项目中避免实体重复的最佳方法。
想象一下,您有一个带有名称和制造商的产品,并且您想确保名称是否重复。 想象一下,一个带有名称的新产品来自客户端(dto),我们需要查看该名称(实体)是否已经存在于数据库中(使用 EF)。
您需要为 entity 和 dto 中的名称修剪名称( name.trim()
)
您需要删除之间的所有空格( string.replace(" ", string.empty())
您需要将所有内容更改为小写( string.lower()
)
最后你需要比较这两个
有没有最佳实践如何在不编写所有代码的情况下做到这一点? 我尝试将string.compare
与ignorecase
和compareoptions
等ignoresymbols
选项以及带有ignorecase
选项的string.equal()
一起使用,但 EF 给了我一个警报,它无法翻译代码。
br
我对你的方法有一个建议。
示例:原始名称:Amir Masoud Babaei --> 新列值:amirmasoudbabaei
当您插入新记录时,进行修剪和小写更改并将其保存到数据库中。 因为它是一个主键,它应该抛出一个错误。
因此,使用这种方法,您无需遍历所有名称并验证该名称是否已存在。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.