1

我正在编写一个 FTP 客户端库。我的 get 函数应采用以下参数:(Server IP, remotefilename, clientfilename, Applications_callback_function)

我已经编写了库来执行没有Applications_callback_function参数的获取功能。

期望是编写带Applications_callback_function参数的get API,并在文件传输完成后使用结果调用回调函数,并将结果放入EventArgs.

我怎样才能在 C# 中做到这一点?

4

1 回答 1

2

您可以将委托传递给您的get方法。尝试这个:

function Get(string ServerIP, string, remotefilename, string clientfilename, Action<YourResponseType> Applications_callback_function)
{
    // your logic...
    Applications_callback_function(data_from_request);
}

或者,如果响应不是单一类型:

function Get<T>(string ServerIP, string remotefilename, string clientfilename, Action<T> Applications_callback_function)
{
    // your logic...
    Applications_callback_function(data_from_request);
}

// caller...
Get<ResponseType>("127.0.0.1", "foo.txt", "bar.txt", myHandler);

function myHandler(ResponseType data) 
{
   // handle response...
}
于 2013-10-25T10:56:47.057 回答