Asynchronous 将文件流发送到后端的缓冲区文件

Asynchronous 将文件流发送到后端的缓冲区文件,asynchronous,filestream,rpa,uipath,Asynchronous,Filestream,Rpa,Uipath,我正在为UiPath RPA工作流编写第一个自定义活动,在该工作流中,我需要将文件流异步发送到后端。这就是我想到的,但我只是觉得这不太管用: 类SendFiles:AsyncCodeActivity { 私有只读HttpClient客户端=新HttpClient(); 私有只读字符串url=“”; [类别(“输入”)] [必需参数] 公共InArgument文件{get;set;} [类别(“输入”)] [必需参数] 公共字符串BearerToken{get;set;} [类别(“产出”)] 公

我正在为UiPath RPA工作流编写第一个自定义活动,在该工作流中,我需要将文件流异步发送到后端。这就是我想到的,但我只是觉得这不太管用:

类SendFiles:AsyncCodeActivity
{
私有只读HttpClient客户端=新HttpClient();
私有只读字符串url=“”;
[类别(“输入”)]
[必需参数]
公共InArgument文件{get;set;}
[类别(“输入”)]
[必需参数]
公共字符串BearerToken{get;set;}
[类别(“产出”)]
公共输出参数JsonResult{get;set;}
受保护的重写IAsyncResult BeginExecute(AsyncCodeActivityContext上下文、AsyncCallback回调、对象状态)
{
foreach(Files.Get中的var filePath(上下文))
{
尝试
{
使用(FileStream fs=File.Open(filePath,FileMode.Open,FileAccess.Read))
{
HttpContent=新的StreamContent(fs);
PostAsync(url、内容);
}
}
捕获(IOE异常)
{
控制台写入线(e.Message);
投掷;
}
}
返回null;
}
受保护的重写字符串EndExecute(AsyncCodeActivityContext上下文,IAsyncResult结果)
{
抛出新的NotImplementedException();
}
}
在发送整个批之后,我想等待te后端处理所有这些文件的结果。我如何才能做到这一点?

//制作外部内容
MultipartFormDataContent formdata=新的MultipartFormDataContent();
...
//在foreach中,将每个文件流添加到外部内容
FileStream fs=File.Open(filePath,FileMode.Open,FileAccess.Read,FileShare.Read);
HttpContent=新的StreamContent(fs);
字符串名称=GetFileName(文件路径);
添加(“内容类型”,GetFileType(名称));
添加(内容,“文件”,名称);
...
//foreach之后,一次性发送全部外部内容
var resultPost=client.PostAsync(url,formdata).Result;
response=resultPost.Content.ReadAsStringAsync().Result;
SuccessfullRequest=resultPost.IsSuccessStatusCode;