【发布时间】: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 我在发布问题之前尝试过,但它对我不起作用。