Тема: Чому делегат не працює, а Action працює?
Привіт. В мене є от такий код
void CreateUser(string userName, string pwd, string email, List<string> roles)
{
_userService.CreateUser(userName, pwd, email, roles, new CreateUserCallBack(CreateScore));
}
class CreateUserCallBack : App42CallBack
{
private Action<string, string, double> _callBack;
public CreateUserCallBack(Action<string, string, double> callBack)
{
_callBack = callBack;
}
public void OnSuccess(object response)
{
User user = (User) response;
if(_callBack!=null)
_callBack("MazeBattleGame", user.GetUserName(), 20);
}
public void OnException(Exception ex)
{
Debug.LogError("Exception: "+ex);
}
}
і він працює норм, але якщо я заміню Action на делегат
public delegate void SaveScoreDelegate(string gameName, string userName, double score);
void CreateUser(string userName, string pwd, string email, List<string> roles)
{
_userService.CreateUser(userName, pwd, email, roles, new CreateUserCallBack(CreateScore));
}
class CreateUserCallBack : App42CallBack
{
private SaveScoreCallBack _callBack;
public CreateUserCallBack(SaveScoreCallBack callBack)
{
_callBack = callBack;
}
public void OnSuccess(object response)
{
User user = (User) response;
if(_callBack!=null)
_callBack("MazeBattleGame", user.GetUserName(), 20);
}
public void OnException(Exception ex)
{
Debug.LogError("Exception: "+ex);
}
}
то воно матюкається ось так ось