MVP デザイン パターンは初めてなので、このガイドに従っています</p>
そこで、LoginModule
(新しいパターンを試すためだけに) のガイドを再作成しようとしています。問題は、ガイドと同じようにすべてを行うことですが、それでもインターフェイスの実装の問題が発生しています。以下に私のコードを添付します:
プレゼンタークラス
public class UserPresenter
{
AuthenticateView iObjAuthView;
public void add(AuthenticateView ObjAuthView)
{
iObjAuthView = ObjAuthView;
}
public void Authenticate(User _model)
{
if (_model.UName == "" && _model.UPassword == "")
{
iObjAuthView.ResponseOnAuthenticate(AuthEnums.Authorized);
}
else if (_model.UName == "" && _model.UPassword != "")
{
iObjAuthView.ResponseOnAuthenticate(AuthEnums.InCorrectPassWord);
}
else
{
iObjAuthView.ResponseOnAuthenticate(AuthEnums.UserNotFound);
}
}
}
インターフェイス クラス
public interface AuthenticateView
{
void ResponseOnAuthenticate(AuthEnums _authEnum);
}
UIpage(aspxページ)
public partial class login : System.Web.UI.Page, AuthenticateView
{
private UserPresenter objPresenter = new UserPresenter();
protected void Page_Load(object sender, EventArgs e)
{
objPresenter.add(this);
}
protected void LoginBtn_Click(object sender, EventArgs e)
{
objPresenter.Authenticate(new StockBO.User(EmailBox.Text, PasswordBox.Text));
}
public void Auth(AuthEnums _auth)
{
Label3.Text = _auth.ToString();
}
}
ResponseToAuthenticate
UI ページで、コンパイラは、インターフェースで定義されたメソッドを実装していないというエラーをスローします。それで、最後かそこらで、何が悪いのかを理解しようとしています。
間違っているのはガイドですか、それとも何か間違っているのは私ですか?