【问题标题】:Convert Number in column to specific word in RDLC C#将列中的数字转换为 RDLC C# 中的特定单词
【发布时间】:2016-08-27 13:26:41
【问题描述】:

我需要知道如何将我的 RDLC 中的列的结果转换为文本。

例如:我的 RDLC 文件正在显示我的数据库表中的一些列,其中一个称为 Status 并且具有三个值(0、1、2),我需要显示值 1 而不是显示“调用“打开”。

我需要重新制定我在数据库中所做的选择,还是可以在 RDLC 中执行此转换?

我进行了一些研究,发现我可以在 RDLC 文件中插入直接代码,但甚至不知道哪个命令开始

* 更新 *

现在我正在尝试使用 Bruce Cam 提到的表达式,单击列中的右侧按钮并输入以下代码:IIF(Fields!StatusChamado.Value = 1, "Call Open", IIF(Fields!StatusChamado .Value = 2, "Call Closed", "Fallback Status"))

但它显然是删除了名为 StatusChamado 的 DS ( DataSource ) 并在列中编写代码本身而不显示结果,我跳过任何步骤以在 RDLC 中输入 Excession ?

* 更新 *

问题解决了,就是 Missing Signal = Before IIF。

【问题讨论】:

    标签: c# rdlc reportviewer


    【解决方案1】:

    你有几个选择。

    • 如果您的状态名称在数据库中,您可以更改您的 SQL/SPROC 以使用 CASE 语句或加入您状态 ID 上的相应表,然后在更新的数据集中包含状态名称。

    • 如果状态名称是硬编码的,则每一列都可以是一个表达式。在您的表达式中,您将使用嵌套的 IIF 或 SWITCH 表达式,如下所示:

    =IIF(Fields!Status.Value = 1, "Call Open", IIF(Fields!Status.Value = 2, "Call Closed", "Fallback Status"))

    【讨论】:

    • 我相信使用表达式比我在数据库中重做选择更实用。我点击右栏和Expression输入命令,但他删除了我的栏([StatusChamado])的DataSource,并输入了所有的代码文本并没有工作。设置这个表达式有技巧吗?
    • 你能用你使用的表达方式更新你的帖子吗?
    • 问题解决了,是 Missing Signal = 在 IIF 之前,谢谢帮助
    猜你喜欢
    • 1970-01-01
    • 2017-03-08
    • 2013-03-22
    • 2018-10-04
    • 1970-01-01
    • 2020-03-26
    • 2011-08-02
    • 2011-02-13
    相关资源
    最近更新 更多