Linq if-elseif-else在asp.net中使用linq查询

 高高G0623 发布于 2023-02-07 11:15

在我的asp.net应用程序中,我正在使用linq.我需要帮助if-elseif-else的语法是什么,在单行中使用linq.

genericReportList =
    (from CD in list
    select new GENERICREPORT
        {
            CITATIONNO = CD.CITATIONNO,
            DATE = CD.DATE,
            LOCATION = CD.LOCATION,
            //STATUS = CD.STATUS,
            PLATENO = Utilities.DecryptData(CD.PLATENO),
            PSOURCE = CD.PSOURCE,
            MAKE = CD.MAKE,
            ID = Utilities.DecryptData(CD.ID),
            NATIONALITY = CD.NATIONALITY,
            SOURCE = CD.SOURCE,
            NAME = Utilities.DecryptData(CD.NAME),
            VIOLATION = CD.VIOLATION,
            STATUS = CD.STATUS == short.Parse("1") ? "Complete" : "Incomplete"
        }).ToList();


If STATUS = CD.STATUS == short.Parse("1") ? "Complete" : and 2 for "Incomplete" and 3 for "Void"

Simon Belang.. 6

我不明白你为什么这么做short.Parse("1").这将始终为1.如果您想在单行中使用多个if-else,请组合三元运算符:

STATUS = CD.STATUS == 1 ? "Complete" : CD.STATUS == 2 ? "Incomplete" : "Void"

如果要在Entity Framework(或其他IQueryable支持ORM )的上下文中使用它,它将转换为CASE WHENSQL语句.

1 个回答
  • 我不明白你为什么这么做short.Parse("1").这将始终为1.如果您想在单行中使用多个if-else,请组合三元运算符:

    STATUS = CD.STATUS == 1 ? "Complete" : CD.STATUS == 2 ? "Incomplete" : "Void"
    

    如果要在Entity Framework(或其他IQueryable支持ORM )的上下文中使用它,它将转换为CASE WHENSQL语句.

    2023-02-07 11:17 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有