通过匿名委托重用程序逻辑
public class Test1
{
public bool Verify(string uid, string pwd)
{
return uid.Equals("admin") && pwd.Equals("1");
}
public void Method1(string uid, string pwd, int arg1)
{
if (Verify(uid, pwd))
{
MessageBox.Show("demo action", arg1.ToString());
}
else
{
MessageBox.Show("校验失败");
}
}
public void Method2(string uid, string pwd, string arg1, string arg2)
{
if (Verify(uid, pwd))
{
MessageBox.Show("demo action", arg1.ToString() + arg2.ToString());
}
else
{
MessageBox.Show("校验失败");
}
}
}
public class Test2
{
public delegate void Action();
public bool Verify(string uid, string pwd)
{
return uid.Equals("admin") && pwd.Equals("1");
}
public void VerifyAction(string uid, string pwd, Action action)
{
if (Verify(uid, pwd))
{
action();
}
else
{
MessageBox.Show("校验失败");
}
}
public void Method1(string uid, string pwd, int arg1)
{
VerifyAction(uid, pwd, delegate
{
MessageBox.Show("demo action", arg1.ToString());
});
}
public void Method2(string uid, string pwd, string arg1, string arg2)
{
VerifyAction(uid, pwd, delegate
{
MessageBox.Show("demo action", arg1.ToString() + arg2.ToString());
});
}
}