Здравствуйте, я забыл как объявлять callback
'и, приведите пожалуйста пример callback
'а, который возвращал как нибудь String
и TcpClient
, и собственно всё выглядело что-то типа ( а организация самого callback
, была вынесена в другой class
) ...
Service.onRecieve += new onRecieveDelegate(onRecieve)
private void onRecieve(TcpClient clnt, String str)
{
Console.WriteLine("User send : " + str);
}
Я в интернете смотрел уже, не спорю, там много статей по этой теме, но все разные и не одна не похожа, на то как я раньше делал :(
В программировании Callback - это передача исполняемого кода в качестве одного из параметров другого кода. Для этой цели C# имеет делегаты.
public class MyTcpClient
{
private TcpClient _clnt;
public MyTcpClient()
{
_clnt = new TcpClient();
}
public void DoWork(Action<TcpClient, string> callBack)
{
// Делаем что-то...
// Вызываем CallBack
callBack?.Invoke(_clnt, "Некая строка");
}
}
static void Main(string[] args)
{
var client = new MyTcpClient();
client.DoWork((tcpClient, s) =>
{
Console.WriteLine($"Получена строка {s}");
});
}
public void RecieveDelegate(object, TcpClient, string);
public event RecieveDelegateChanged;
public void Constructor()
{
RecieveDelegateChanged += (client, str) =>
{
/* Делаем что-то */
};
}
public void RaiseReciveDelegate(TcpClient client, string message)
{
RecieveDelegateChanged?.Invoke(this, client, message);
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как сделать кнопку назад на Cancel, так, чтобы при возврате происходило автосохранение изменений в сцене из которой хотят выйти
Есть view: Views\WindowCalc\ChooseWindowcshtml Есть контроллер: Controllers\WindowCalcController
С практическим асинхронным программированием столкнулся относительно недавно, и, изучая тему детальнее, назрел вопрос: При создании задачи...
Как связать WPF с EF Core Sqlite и что прописывать в appconfig? Если нельзя связать