[英]Cannot implicitly convert type 'System.Threading.Tasks.Task<String> to 'string'
[英]Cannot implicitly convert type 'string' to 'System.Threading.Tasks.Task<string>' in c#
我有这个代码
private void button1_Click(object sender, EventArgs e)
{
//===========> Getting error here <==================//
textBox2.Text = CallFunc(textBox1.Text);
}
static async Task<string> CallFunc(string str)
{
Program p = new Program();
string s = await p.DocumentToText(str);
return s;
}
public async Task<string> DocumentToText(string path)
{
string txt = String.Empty;
AmazonTextractClient client = new AmazonTextractClient(key, Skey, reg);
//some AWS functionality
Thread.Sleep(2000);
txt = "hello world";
return txt;
}
我将此button1_Click function 更改为
private void button1_Click(object sender, EventArgs e)
{
var d = await CallFunc(textBox1.Text);
textBox2.Text = d.Results();
}
正如这个问题的一个答案所建议的那样
无法将类型“string”隐式转换为“System.Threading.Tasks.Task<string>”
但这仍然行不通
在button1_Click
事件中添加async
private async void button1_Click(object sender, EventArgs e)
{
var d = await CallFunc(textBox1.Text);
textBox2.Text = d;
}
在 button1_Click 方法中使用异步任务
private async Task button1_Click(object sender, EventArgs e)
{
var d = await CallFunc(textBox1.Text);
textBox2.Text = d.Results();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.