gpt4 book ai didi

c# - 在 LINQ 中使用 Path.GetFileNameWithoutExtension 方法?

转载 作者:太空宇宙 更新时间:2023-11-03 21:27:07 25 4
gpt4 key购买 nike

我正在尝试使用以下 LINQ 语句来获取满足特定条件的文件名:

query.First( f =>
(f.MD5 == md5 || f.ArchiveFiles.Any(af => af.MD5 == md5))
&& Path.GetFileNameWithoutExtension(f.FileName) == f.GraphicRequest.GraphicName).FileName;

但是,我收到以下错误:

System.String GetFileNameWithoutExtension(System.String)' has no supported translation to SQL

我正在尝试将数据表中已删除扩展名的文件名与另一个字段进行比较。例如,数据库中的文件名可能是“image1.jpg”,我想将它与值为“image1”的字段进行比较。我以为我可以使用 Path.GetFilenameWithoutExtension 方法,但在 LINQ 方面似乎并非如此。

有没有其他方法可以在 LINQ 中完成此操作?

最佳答案

你必须在内存中完成,首先从数据库中获取记录并应用你想要的功能:

query.AsEnumerable().First(...);

顺便说一句,您可能想改用 FirstOrDefault,因为如果找不到记录,这将引发异常。

关于c# - 在 LINQ 中使用 Path.GetFileNameWithoutExtension 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26346717/

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