c# - Entity Framework : where field starts with number

标签 c# entity-framework asp.net-mvc-3 entity-framework-4.1

我将 MVC3 与 Entity Framework 4.1 一起使用,并且我有一个按公司名称的第一个字符分页的网格。我让它工作得很好,但有些公司以数字开头。我正在使用以下 LINQ 查询来获取以所选数字开头的公司,但如何才能选择以数字开头的公司?

    var b = (from c in dbContext.Companies
             where c.CompanyName.StartsWith(selectedCharacter)
             select c)

我试过:

 where char.IsNumber(l.CompanyName[0]) 

但是,我收到一个错误,因为它不知道如何将其转换为 SQL。

编辑:我知道我可以做 .CompanyName.StartsWith("1") || .CompanyName.StartsWith("2")等。有没有更好的方法? . 有什么想法吗?

最佳答案

你可以这样做。

var numbers = new string[]{"1","2","3","4","5","6","7","8","9","0"};
var b = (from c in dbContext.Companies
         where numbers.Contains(c.CompanyName.Substring(0,1))
         select c).ToList();

如果您的公司是空的,您可能会遇到问题。

关于c# - Entity Framework : where field starts with number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7124826/

相关文章:

c# - 在 C# 中检测相机图像中的对象

asp.net-mvc-3 - 无法更新类型的模型 mvc

asp.net-mvc-3 - Html.Partial 和 Html.Action 方法有什么区别?

c# - 使现有的 C# Windows 应用程序在 linux 上运行

c# - 我可以 PInvoke C++ 可执行文件但不能共享库

c# - 你如何在 C# 中找到用户名/身份

entity-framework - Code First 迁移在 localdb 上更新了错误的 Db

asp.net-mvc - 使用 Entity Framework 实现存储库模式。存储库范围内的问题解决实体

mysql - 关系数据库中的数据粒度

asp.net-mvc-3 - MVC3 Razor 中的多语言实现