MembershipUserクラスとMembershipProviderクラスを拡張しています。私はORMを使用しています。MembershipUserクラスの拡張
私は疑問に思っています - MembershipUserクラスにはPasswordプロパティはありませんが、パスワードを戻しパスワードを変更するメソッドなどがあります。
user.password = newPassword;
session.commit();
しかし、のMembershipUserは、任意のパスワードプロパティまたはフィールドを持つことが想定されていないようだし、代わりにそれはSQLを使って設定する必要があります(そうしています:私は、最初のORMのアプローチを使用して、我々は何ができる、と考えていましたクエリを作成するには)?
たMembershipUserクラスは、パスワードフィールドを持っている場合は、私がのMembershipProviderのupdatePassword方法でこのような何かを行うことができます:私の質問をより明確にするために
User user = from database.getUser(username, oldpassword);
user.password = newPassword;
session.commit();
しかし、私はできない場合私はSQLを使用する必要があります:
UPDATEパスワードSET .. etcなど...私は取得することはできませんし、データベースからオブジェクトを変更する必要があるフィールドを持っていないオブジェクトを変更する(パスワードフィールドなど)。
はい、これらのメソッドの中には、MembershipUserにパスワードプロパティがないため、ORMアプローチと同様に、データベースからMembershipUserオブジェクトを取得できません。 – BobTurbo
必要に応じてパスワードプロパティを追加できますが、認証方法を再考する必要があります。通常、実際のパスワードが必要な接続オブジェクトが必要な場合は、パスワードを「手持ち」にして、それをアプリケーションの残りの部分にアクセスできる場所に配置して、Validateメソッドの実行中または間もなく構築します。 –