C#,从调用另一个异步函数的函数返回字符串?

萨钦

我想从调用另一个异步函数的函数返回一个字符串。你能告诉我这是否可行吗?这是我的职责

public async Task<TokenCredential> LoginAsync()
{
    var credential = await GenerateCredentialAsync(); // This is a library function 
                                                   //that returns a 'Task<TokenCredential>'

    return credential.Token; // I want to return this value which is a string
}

我只想返回令牌值。但是,如果我更改返回类型。我收到编译器错误

“等待操作符只能在异步方法中使用”

如果我完全删除等待,如下所示:

public string LoginAsync()
{
    var credential = GenerateCredentialAsync();            
    return credential.Token;
}

尝试取消引用credential.token时出现此错误

'Task <TokenCredential>不包含Token的定义。

你能帮忙吗?

毫米8

实际上,应该Task<TokenCredential>提供方法的返回类型,Token以使凭证属性返回a TokenCredential如果Token属性返回string,则该方法的返回类型应为Task<string>到现在为止还挺好。

问题可能是您如何调用该LoginAsync()方法。由于这是异步的,因此您应该等待它:

TokenCredential token = await LoginAsync();

这要求您从标记为的方法中调用它async

如果将LoginAsync方法定义为同步方法,则需要先获取的结果,GenerateCredentialAsync()然后才能从LoginAsync()方法返回。您可以通过阻止Result返回属性来做到这一点Task

public string LoginAsync()
{
    var credential = GenerateCredentialAsync().Result;            
    return credential.Token;
}

请注意,尽管不建议使用后一种方法。有关为什么不应该阻止异步代码的更多信息,请参阅Stephen Cleary的博客文章:http : //blog.stephencleary.com/2012/07/dont-block-on-async-code.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从字符串C#中从另一个名称空间调用函数

来自分类Dev

Postgres:使用在另一个函数中返回字符串的函数

来自分类Dev

定义一个函数,该函数为各种字符串python调用另一个函数

来自分类Dev

如何将字符串从一个函数返回到另一个函数?

来自分类Dev

从另一个函数C#调用另一个函数

来自分类Dev

如何调用另一个构造函数之前分割字符串

来自分类Dev

我如何调用另一个函数来获取字符串数据

来自分类Dev

如何从另一个函数调用字符串

来自分类Dev

C#用默认构造函数的另一个类的字符串填充List <T>

来自分类Dev

C代码:将字符串从一个函数传递到另一个函数

来自分类Dev

获取传递给另一个函数的函数向量的字符串名称

来自分类Dev

在另一个字符串输入函数之后调用scanf()创建幻像输入

来自分类Dev

从一个函数调用字符串到另一个函数似乎没有用。为什么?

来自分类Dev

如何将函数返回的字符串与Javascript中的另一个String变量进行比较

来自分类Dev

在Java中的另一个类中返回类构造函数字符串

来自分类Dev

另一个函数内部的C ++调用函数

来自分类Dev

被阻止的Python异步函数调用也会阻止另一个异步函数

来自分类Dev

反应本机调用异步函数并在另一个异步函数中使用return

来自分类Dev

在调用另一个函数之前返回

来自分类Dev

调用另一个函数内具有参数类型的函数c#

来自分类Dev

调用另一个函数内具有参数类型的函数c#

来自分类Dev

如何将字符串变量从一个函数传递给另一个函数?

来自分类Dev

将字符串从一个函数传递到另一个函数

来自分类Dev

通过C#调用C ++ DLL的导出类时,该类的C样式字符串成员在一个导出函数中可以,但在另一个导出函数中则可以

来自分类Dev

接受字符串列表并返回另一个特定列表的函数

来自分类Dev

使用指针从 C 中的 main 中的另一个函数更改字符串值

来自分类Dev

如何将字符串数组传递给 C 中的另一个函数

来自分类Dev

在另一个函数中分配字符串(char *)

来自分类Dev

在另一个函数中分段故障访问字符串

Related 相关文章

  1. 1

    从字符串C#中从另一个名称空间调用函数

  2. 2

    Postgres:使用在另一个函数中返回字符串的函数

  3. 3

    定义一个函数,该函数为各种字符串python调用另一个函数

  4. 4

    如何将字符串从一个函数返回到另一个函数?

  5. 5

    从另一个函数C#调用另一个函数

  6. 6

    如何调用另一个构造函数之前分割字符串

  7. 7

    我如何调用另一个函数来获取字符串数据

  8. 8

    如何从另一个函数调用字符串

  9. 9

    C#用默认构造函数的另一个类的字符串填充List <T>

  10. 10

    C代码:将字符串从一个函数传递到另一个函数

  11. 11

    获取传递给另一个函数的函数向量的字符串名称

  12. 12

    在另一个字符串输入函数之后调用scanf()创建幻像输入

  13. 13

    从一个函数调用字符串到另一个函数似乎没有用。为什么?

  14. 14

    如何将函数返回的字符串与Javascript中的另一个String变量进行比较

  15. 15

    在Java中的另一个类中返回类构造函数字符串

  16. 16

    另一个函数内部的C ++调用函数

  17. 17

    被阻止的Python异步函数调用也会阻止另一个异步函数

  18. 18

    反应本机调用异步函数并在另一个异步函数中使用return

  19. 19

    在调用另一个函数之前返回

  20. 20

    调用另一个函数内具有参数类型的函数c#

  21. 21

    调用另一个函数内具有参数类型的函数c#

  22. 22

    如何将字符串变量从一个函数传递给另一个函数?

  23. 23

    将字符串从一个函数传递到另一个函数

  24. 24

    通过C#调用C ++ DLL的导出类时,该类的C样式字符串成员在一个导出函数中可以,但在另一个导出函数中则可以

  25. 25

    接受字符串列表并返回另一个特定列表的函数

  26. 26

    使用指针从 C 中的 main 中的另一个函数更改字符串值

  27. 27

    如何将字符串数组传递给 C 中的另一个函数

  28. 28

    在另一个函数中分配字符串(char *)

  29. 29

    在另一个函数中分段故障访问字符串

热门标签

归档