gpt4 book ai didi

c# - 如何在不枚举查询的情况下将字符串转换为 int

转载 作者:行者123 更新时间:2023-11-30 20:44:06 25 4
gpt4 key购买 nike

可能是我瞎了,但我找不到如何将字符串转换为整数。我写了

query.OrderByDescending(a => SqlFunctions.IsNumeric(
a.Index.Substring(a.Index.Length - 4, 4)) == 1 ?
Convert.ToInt32(a.Index.Substring(a.Index.Length - 4, 4)) :
0);

但是,正如我所怀疑的,它返回了一个错误

LINQ to Entities does not recognize the method 'Int32 ToInt32(System.String)'

而且 SqlFunctions 没有成员 Convert。有什么方法可以在不枚举查询的情况下实现这一点?

编辑:int.Parse 抛出

LINQ to Entities does not recognize the method 'Int32 Parse(System.String)

最佳答案

这是一个远景,因为我自己还没有尝试过(几周前我读到过)。

如果SqlFunctions类没有提供你需要的函数,你可以在SQL Server端创建一个自定义函数,然后在.NET端创建一个类似于SqlFunctions类的类来调用自定义函数。您必须使用一个属性来装饰 .NET 类。

也许这样的事情会奏效?

您可以阅读有关此 herehere 的更多信息。

关于c# - 如何在不枚举查询的情况下将字符串转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29798140/

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