c# - 强类型数据集: Override column get : set

标签 c# xsd strongly-typed-dataset

我们使用数据集作为数据访问层。 目前有一些列存储加密数据。

使用 CLR,我能够创建一个 SQL 函数来解密 select 中的数据,但在讨论中我们确定这是一个安全风险。

我想做的是

  1. 覆盖数据表列的获取/设置,以便在获取时取消对值的加密 并返回一个可读的字符串,并在集合上对数据进行加密。
  2. 或者使用表适配器执行某些操作,以便在选择/更新时执行与上面相同的操作。

最佳答案

您可以尝试为此任务创建扩展方法:

namespace ExtensionMethods
{
    public static class MyExtensions
    {
        public static void SetEncryptColumn(this DataSetType.DataTableRow row, string value)
        {
            row.Encrypt = EncryptValue(value);
        }

        public static string GetEncryptColumn(this DataSetType.DataTableRow row)
        {
            return DecryptValue(row.Encrypt);
        }
    }   
}

http://msdn.microsoft.com/en-us/library/bb383977%28v=vs.90%29.aspx

关于c# - 强类型数据集: Override column get : set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11015718/

相关文章:

c# - C#错误C0115:GetComponent <Rigedbody2D>

xsd - 如何将XSD转换为Ecore(EMF)

java - 如何以适合 JAXB 和 Java 的方式表示 XML 模式中的对象层次结构

xml - 如何定义具有模式的 XML 架构 ID 属性?

c# - 在 DataSet.GetXml() 之后从 UTC 转换的日期时间不正确

c# - 设置在强类型数据集 TableAdapter 中使用的 CommandTimeout?

c# - CopyToAsync 后文件为空

c# - 如何重构此 C# 代码

c# - 如果我在一个没有等待的线程上调用 notify 会发生什么?

.net - 从插入记录的主键检索标识值