У меня есть интерфейс для службы WCF
public interface IAuthenticationService
{
void Authenticate(Action<bool, Exception> callback, string UserName,string Password);
}
У меня есть реализация
public class AuthenticationService : IAuthenticationService
{
public void Authenticate(Action<bool, Exception> callback, string Name, string Password)
{
MvcWebAuthenticate.AuthenticationServiceClient authService = new MvcWebAuthenticate.AuthenticationServiceClient();
authService.CookieContainer = AuthCookie.CookieJar;
authService.LoginCompleted += (s, e) =>
{
if (e.Result == false)
{
callback(false, e.Error);
}
else
{
callback(true, null);
}
};
authService.LoginAsync(Name, Password, "", true);
}
}
С моей модели представления я хочу вызвать службу выше и передать имя пользователя и пароль, ноЯ не понимаю, как написать лямбда-выражение, чтобы передать параметры и получить «обратный вызов».
Если бы у меня не было UserName и пароля, я мог бы написать этот код:
_dataService.Authenticate(
(authenticated, error) =>
{
if (error != null)
{ }
});
Но как этого добиться, когда мне нужно передать параметры?
Спасибо