2017-12-20 13 views
-1

は、これまでのところ、私は次のコードは、C#ボットフレームワークの例外は、エミュレータと

をLUIS JSONレスポンスはエンティティが含まれているかどうかをチェックするために使用するか、しないかをしなければならないbotframeworkウェブサイト上のWebチャットのテストの間で適切に処理されないように見えます
public static class StatusHelper 
{   
    public static bool EntityCheck(LuisResult result) 
    { 
     try 
     { 
      var statuscheck = result.Entities[0].Entity; 
      return true; 
     } catch (Exception) 
     { 
      return false; 
     } 
    } 
} 

、別のファイル内の私は、エンティティが見つからなかった場合、それは

No Entities 
を言ってボットを持っているでしょう、私のボットエミュレータで

if (StatusHelper.EntityCheck(LuisResult result)) 
{ 

//code 

} 
else 
{ 
    await context.PostAsync("No Entities"); 
} 

を使用

しかしdev.botframework.comのウェブサイト上では

Sorry, my bot code is having an issue. 

を言う価値があるかどうか、私はここに

答えて

1

何が起こっているのかわからないんだけど、なぜあなたは、テストのために例外のスローを使用していますか? あなたの結果と配列内のいくつかのエンティティだけをチェックすることはできません。次に、次のように1番目のエンティティがヌルでないかどうかを確認してください:

public static bool EntityCheck(LuisResult result) 
{ 
    return (result.Entities.Count > 0 && result.Entities[0].Entity != null); 
}