【问题标题】:ASP.Net GridView - Show the last 4 digitsASP.Net GridView - 显示最后 4 位数字
【发布时间】:2015-05-11 21:29:54
【问题描述】:

在我的 gridview 中,我有一列需要屏蔽所有内容,但最后 4 位数字除外。 这是我的 GridView:

<asp:GridView ID="GridView" runat="server" AutoGenerateColumns="False" BorderStyle="None" BorderWidth="1px" CellPadding="3" DataKeyNames="br_id" DataSourceID="SqlDataSource6">
                <Columns>
                    <asp:BoundField DataField="AccountNumber" HeaderText="Account Number" SortExpression="AccountNumber" />
                </Columns>
</asp:GridView>

我在我的 SQLDataSource 中尝试了 SQL Server 的 Right 功能,

`SELECT '****-****-****' + RIGHT (AccountNumber, 4)` FROM....

然后的问题是,当我点击编辑并保存在我的 GridView 中时,它会将其保存在数据库中,例如:****-****-****-1234

【问题讨论】:

  • 将被屏蔽的字段作为另一列返回,并将该列用于显示目的。使用实际列进行编辑。这样您就不必担心将掩码值存储在数据库中
  • 你可以在这里找到解决方案 - stackoverflow.com/questions/12843514/…
  • 很好奇网格中的屏蔽点并在编辑可用时显示并将显示该字段。编辑功能是否仅提供给具有特权的用户?如果不是,那么这不是破坏了掩盖帐号的目的吗?
  • 用户不能编辑账号,管理员可以切换到用户档案编辑账号。
  • @Mutant 我在发布问题之前尝试过,但它对我不起作用。

标签: c# asp.net gridview


【解决方案1】:

从数据库中返回 4 位数字。如果您编辑了帐号,则仅更新数据库中的帐号。

如果用户需要能够看到完整的帐号,那么它首先就违背了屏蔽它的目的。

【讨论】:

  • 用户不能编辑账号,管理员可以切换到用户档案编辑账号。
猜你喜欢
  • 1970-01-01
  • 2012-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-18
  • 2020-04-02
  • 2012-06-18
相关资源
最近更新 更多