如何在 Linq To SQL 中知道字段是否为数字
- 作者: o决恋25304408
- 来源: 51数据库
- 2022-12-13
问题描述
我需要选择列值为数字的表的行,有什么帮助吗?
I need to select the rows of a table where a column value is numeric, any Help?
我有一个 varchar 列,我需要选择哪些是数字,哪些不是.
I have a varchar column and I need to select the ones that are numbers and the ones that are not.
EDIT 2: Integer.TryParse 不能使用,因为它不能转换为 SQL.
EDIT 2: Integer.TryParse cannot be use because it cannot be translate to SQL.
推荐答案
我不知道 LinqToSQL 中是否有 int.TryParse() 的映射,但是您可以通过执行查询分两步完成,转换为列表,然后使用 LinqToObjects 从列表中选择.
I don't know if there is a mapping for int.TryParse() in LinqToSQL, but you could probably do it in two steps by performing the query, casting to a List, then selecting out of the list with LinqToObjects.
int i; var query = context.Table.ToList(); var intQuery = query.Where( t => int.TryParse( t.Column, out i ) );
你可能想看看 动态 LINQ,也是.这将允许您执行以下操作:
You might want to look at Dynamic LINQ, too. That would allow you to do something like:
var query = context.Table.Where( "IsNumeric(Column)" );
编辑 VS2008 代码示例中提供了动态 LINQ,链接来自 Scott Guthrie 的博客,我已在上面链接.
EDIT Dynamic LINQ is available in the VS2008 Code Samples, linked to from Scott Guthrie's blog, which I've linked above.
- C#通过fleck实现wss协议的WebSocket多人Web实时聊天(附源码)
- 团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
- 使用 MSBuild.exe 在发布模式下构建 C# 解决方案
- 当我发布 Web 应用程序时,AfterPublish 脚本不运行
- 构建时 T4 转换的产品仅在下一个构建中使用
- ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
- 新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
- 如何将条件编译符号(DefineConstants)传递给 msbuild
- MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
- NuGet 包还原找不到包,没有源
