簡體   English   中英

如何解決論點 2:無法從“方法組”轉換為“ResumeAfter”<string> &#39; 在 c#.net 代碼中進行身份驗證時

[英]how to solve Argument 2: cannot convert from 'method group' to 'ResumeAfter<string>' when authenticated in c#.net code

嘗試在用戶通過身份驗證后檢索 useremail id,但在身份驗證方法中的 ResumeAfterAuth 處出錯錯誤 CS1503 參數 2:無法從“方法組”轉換為“ResumeAfter” 如何解決? 驗證碼

public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable<IMessageActivity> item)
{
    var message = await item;
     //endpoint v1
    if (string.IsNullOrEmpty(await context.GetAccessToken(ConfigurationManager.AppSettings["ActiveDirectory.ResourceId"])))
    {
       //Navigate to website for Login
       await context.Forward(new AzureAuthDialog(ConfigurationManager.AppSettings["ActiveDirectory.ResourceId"]), ResumeAfterAuth, message, CancellationToken.None);
    }
}

認證方式后

private async Task ResumeAfterAuth(IDialogContext context, IAwaitable<AuthResult> result)
{
    //AD resposnse message
    var message = await result;
    string tokenstring = message.AccessToken;
    string userName = message.UserName;
    await context.PostAsync("Welcome to BOT");
    await context.PostAsync(message.ToString());
    context.Wait(MessageReceivedAsync);
}

您的論點之間必須存在不匹配。 確保您的 AzureAuthDialog 是 IDialog 類型,或更改 ResumeAfterAuth 方法以期望IAwaitable<type that matches the AzureAuthDialog>

此外,當您的項目還很新鮮時,請考慮遷移到 BotFrameworkv4,因為不再支持 v3.0。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM