c #Может ли «метод задачи» быть также «асинхронным» методом?

Я пытаюсь заполучить новые асинхронные материалы CTP, и я, вероятно, запутался здесь. Я могу использовать этот «метод задачи» без проблем:

    public static Task<String> LongTaskAAsync() {
        return Task.Run(() => {
            return("AAA");
            });
        }

Но что, если мне нужна задача для выполнения другой задачи, могу ли я пометить ее как «асинхронную» и использовать «ожидание»? Я пробовал это:

public async static Task<String> LongTaskAAsync() {
        await Task.Delay(2000);
        return Task.Run(() => {
            return("AAA");
            });
        }

Но затем загадочным образом появляется эта ошибка компилятора :. Поскольку это асинхронный метод, возвращаемое выражение должно иметь тип «строка», а неTask<string>

Что мне здесь не хватает?

23
задан Engineert 23 September 2019 в 12:24
поделиться