无法在 C# 中将类型“string”隐式转换为“System.Threading.Tasks.Task<string>”

asm*_*mgx 1 c# asynchronous async-await

我有这个代码

    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;
     }
Run Code Online (Sandbox Code Playgroud)

我将这个button1_Click函数更改为

    private void button1_Click(object sender, EventArgs e)
    {
        var d = await CallFunc(textBox1.Text);
        textBox2.Text = d.Results();
    }
Run Code Online (Sandbox Code Playgroud)

正如这个问题的一个答案所推荐的

无法将类型“string”隐式转换为“System.Threading.Tasks.Task<string>”

但这仍然不起作用

在此输入图像描述

Mey*_*adi 6

添加到事件asyncbutton1_Click

private async void button1_Click(object sender, EventArgs e)
{
    var d = await CallFunc(textBox1.Text);
    textBox2.Text = d;
}
Run Code Online (Sandbox Code Playgroud)