В C#, как Вы объявляете подкласс EventHandler в интерфейсе?

Вы можете установить дополнительные параметры на AuthorizationRequest. AuthorizationRequest реализует шаблон сборки. У него есть метод setAdditionalParameters(Map<String, String> additionalParameters), в котором вы можете указать любые параметры для запроса авторизации.

Пример из демо-приложения AppAuth-Android:

    Map<String, String> additionalParams = new HashMap<>();
    additionalParams.put("nonce","<some_nonce_value>");

    AuthorizationRequest.Builder authRequestBuilder = new AuthorizationRequest.Builder(
            mAuthStateManager.getCurrent().getAuthorizationServiceConfiguration(),
            mClientId.get(),
            ResponseTypeValues.CODE,
            mConfiguration.getRedirectUri())
    .setScope(mConfiguration.getScope())
    .setAdditionalParameters(additionalParams);
22
задан Minh Tran 28 November 2018 в 01:01
поделиться

2 ответа

Ну, необходимо определить args и возможно делегировать где-нибудь. Вы не делаете потребность второй файл, но я, вероятно, рекомендовал бы это..., но классы не должны, вероятно, быть , вложил , если это было исходной проблемой.

рекомендация состоит в том, чтобы использовать стандарт "отправитель, args" шаблон; существует два подхода cmmon:

1: объявите класс события-args отдельно и используйте EventHandler<T> в интерфейсе:

public class MySpecialEventArgs : EventArgs {...}
...
EventHandler<MySpecialEventArgs> MyEvent;

2: объявите класс события-args и делегируйте тип отдельно:

public class MySpecialEventArgs : EventArgs {...}
public delegate void MySpecialEventHandler(object sender,
    MySpecialEventArgs args);
....
event MySpecialEventHandler MyEvent;
25
ответ дан 29 November 2019 в 04:47
поделиться

Принятие C# 2.0 или позже...

public class MyEventArgs: EventArgs
{
    // ... your event args properties and methods here...
}

public interface IMyInterface
{
    event EventHandler<MyEventArgs> MyEvent;
}
15
ответ дан 29 November 2019 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: