動的データで使用したい User テーブルがあります。問題は、MD5 を使用して暗号化する必要があるパスワード フィールドがあることです。Entity Framework を使用していますが、これを行うにはどうすればよいですか?
2 に答える
2
別のアイデアとして、カスタムFieldTemplateを作成して(UIHintを使用してフィールドフィールドテンプレートをオーバーライドする)、このフィールドを暗号化することもできます。
于 2010-07-14T10:03:49.437 に答える
0
私はこの解決策を見つけましたが、誰かがより良いアイデアを持っている場合はお知らせください
public partial class SigecRendicionesEntities
{
partial void OnContextCreated()
{
// Register the handler for the SavingChanges event.
this.SavingChanges
+= new EventHandler(context_SavingChanges);
}
// SavingChanges event handler.
private static void context_SavingChanges(object sender, EventArgs e)
{
// Validate the state of each entity in the context
// before SaveChanges can succeed.
foreach (ObjectStateEntry entry in
((ObjectContext)sender).ObjectStateManager.GetObjectStateEntries(
EntityState.Added | EntityState.Modified))
{
// Find an object state entry for a SalesOrderHeader object.
if (entry.Entity.GetType() == typeof(Usuario))
{
Usuario usr = entry.Entity as Usuario;
string hashProvider = "MD5CryptoServiceProvider";
usr.Clave = Cryptographer.CreateHash(hashProvider, usr.Clave);
}
}
}
}
于 2010-07-13T16:10:24.887 に答える