Реализовать класс для WPF вместо Xamarin

Пытаюсь подключить обработку Hubs для SignalR в WPF приложении. Вот статья по которой пытался реализовать данное подключение https://metanit.com/sharp/aspnet5/30.12 . Она написана для Xamarin Forms и у неё есть класс Command который я не могу определить. Может кто-нибудь подскажет как возможно это сделать?

Пробовал реализовать класс Command при помощи интерфейса ICommand (using System.Windows.Input).

public class Command : ICommand
    {
        private Action<object> execute;
        private Func<object, bool> canExecute;

        public event EventHandler CanExecuteChanged
        {
            add { CommandManager.RequerySuggested += value; }

            remove { CommandManager.RequerySuggested -= value; }
        }

        public Command(Action<object> execute, Func<object, bool> canExecute = null)
        {
            this.execute = execute;
            this.canExecute = canExecute;
        }

        public bool CanExecute(object parameter)
        {
            return this.canExecute == null || this.canExecute(parameter);
        }

        public void Execute(object parameter)
        {
            execute(parameter);
        }
    }

Когда я пытаюсь инициализировать, то получаю ошибку

 var SendMessageCommand = new Command(async () => await SendMessage(), () => IsConnected);

Скриншот ошибки


Ответы (1 шт):

Автор решения: VladD

Ваш конструктор принимает первым аргументом функцию от одного аргумента, а вы передаёте функцию от нуля аргументов.

Попробуйте так:

new Command(o => SendMessage(), o => IsConnected)
→ Ссылка