c# - 实体 orderby 的 linq

标签 c# .net entity-framework linq-to-entities

如何使用 Entity Framework 将此查询转换为 linq to entities:

SELECT  customer_id,
    customer_name,
    customer_code
FROM dbo.V_STF_CUSTOMER
WHERE   company_id=@company_id AND
ORDER BY    CASE
            WHEN ISNUMERIC(customer_name)=1 THEN 1
            ELSE 0
        END,
        customer_name

我有这个:

return CUstomers.GetQuery().
            Where(x => x.CompanyId == companyId).
        OrderBy(??This is my problem??);

我不知道怎么翻译orderby。有什么想法吗?

最佳答案

return Customers.GetQuery().
            Where(x => x.CompanyId == companyId).
        OrderBy(x=> SqlFunctions.IsNumeric(x.customer_name)).
        ThenBy(x=> x.customer_name);

关于c# - 实体 orderby 的 linq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6106812/

相关文章:

javascript - 通过 JavaScript 更改 MVC Ajax 表单的插入模式?

C# 金钱的字符串格式问题

.net - 如果我必须为 Oracle .net Entity Framework 在 app.config 中定义每个字段,ORM 的意义是什么

c# - .Net 全局化在特定服务器上无法正常工作

c# - 带接口(interface)的 EF7 导航属性

c# - 以单词结尾的字符串的前 180 个字符

c# - Azure 连接字符串 - 对象引用未设置为对象的实例

c# - 当新版本已签名但以前未签名时,.NET 程序集绑定(bind)重定向

entity-framework - 如果我知道我只会使用EF,是否有理由将Repository模式与Entity Framework一起使用?

c# - 修改了 Entity Framework 集合;枚举操作可能无法执行