如何使用EF Code First散列或加密字段?

时间:2011-01-04 21:13:06

标签: entity-framework code-first

使用EF代码首先,如何中断保存字段值以便我可以哈希呢?一个简单的例子是密码字段:

public class Account
{
    private string _password; 

    public string Password
    {
        get
        {
            return _password;
        }
        set
        {
           _password = MyHashMethod(value);
        }
    }
}

这在将值保存到数据库时似乎有效,但在检索值时不起作用。

编辑: 将_password = MyHashMethod(_password)更改为上面的MyHashMethod(值)。需要在下面的答案中进行相同的修正。

1 个答案:

答案 0 :(得分:6)

我会这样做:

public class Account {
    public string HashedPassword { get; set; } 
    public string ClearTextPassword { 
        set { HashedPassword = MyHashMethod(value); }
    }
}

只有HashedPassword存储在DB中。