2017-09-22 3 views
2

LUIS 대화 상자로 액티비티 텍스트를 찾으려고합니다. 나는 루이스 의도 처리기를 사용하고 있습니다 :Luis 인 텐트 핸들러가 봇 프레임 워크에 예외를 던지고 있습니다.

[LuisIntent("")] 
public async Task None(IDialogContext context, IAwaitable<IMessageActivity> result) 
{  
    await context.PostAsync("I have no idea what you are talking about."); 
    context.Wait(MessageReceived); 
} 

을하지만이 예외가 발생합니다 : 유형의

파일 '텍스트/일반'이런 일이 발생하는 이유

이 가

사람이 저를 제안 할 수 있습니까? 나는 또한 중단 점을 두었지만 충돌이 없다.

+0

입니까? – JasonSowers

+0

어떤 SDK 버전을 사용하고 있습니까? –

답변

1

의도 핸들러 서명으로 인해이 문제가 발생합니다. IAwaitable<IMessageActivity> result에 주목하십시오. 다시 작성과 같이 작동합니다 :

[LuisIntent("")] 
    public async Task None(IDialogContext context, LuisResult result) 
    { 
     await context.PostAsync("I have no idea what you are talking about."); 
     context.Wait(MessageReceived); 
    } 

대신의 IAwaitable<IMessageActivity>, 당신은 LuisResult를 사용해야합니다. 또한, LuisDialog는 세 개의 매개 변수와 의도 핸들러 과부하를 대상 않으며이 너무 작동합니다, 당신은 당신의 코드의 자세한 내용을 게시하거나 REPO에서 프로젝트를 넣을 수

내가 재현 할 수 없습니다
[LuisIntent("")] 
    public async Task None(IDialogContext context, IAwaitable<IMessageActivity> activity, LuisResult result) 
    { 
     await context.PostAsync("I have no idea what you are talking about."); 
     context.Wait(MessageReceived); 
    }