diff --git a/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisRecognizer.cs b/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisRecognizer.cs
index d05f8bfa97..a3d0333784 100644
--- a/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisRecognizer.cs
+++ b/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisRecognizer.cs
@@ -48,7 +48,6 @@ public class LuisRecognizer : Recognizer, ITelemetryRecognizer
///
/// Initializes a new instance of the class.
///
- /// The LUIS application to use to recognize text.
/// The LUIS recognizer version options.
/// (Optional) Custom handler for LUIS API calls to allow mocking.
public LuisRecognizer(LuisRecognizerOptions recognizerOptions, HttpClientHandler clientHandler = null)
diff --git a/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/ActionScope.cs b/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/ActionScope.cs
index 998ac3e2d7..8cea3723aa 100644
--- a/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/ActionScope.cs
+++ b/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/ActionScope.cs
@@ -49,8 +49,10 @@ public override async Task ResumeDialogAsync(DialogContext dc,
return await OnActionScopeResultAsync(dc, actionScopeResult, cancellationToken).ConfigureAwait(false);
}
+ var dcState = dc.GetState();
+
// When we are resumed, we increment our offset into the actions and being the next action
- var nextOffset = dc.GetState().GetIntValue(OFFSETKEY, 0) + 1;
+ var nextOffset = dcState.GetIntValue(OFFSETKEY, 0) + 1;
if (nextOffset < this.Actions.Count)
{
return await this.BeginActionAsync(dc, nextOffset, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -135,7 +137,9 @@ protected virtual async Task OnEndOfActionsAsync(DialogContext
protected virtual async Task BeginActionAsync(DialogContext dc, int offset, CancellationToken cancellationToken = default)
{
// get the action for the offset
- dc.GetState().SetValue(OFFSETKEY, offset);
+ var dcState = dc.GetState();
+
+ dcState.SetValue(OFFSETKEY, offset);
var actionId = this.Actions[offset].Id;
// begin Action dialog
diff --git a/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/BaseInvokeDialog.cs b/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/BaseInvokeDialog.cs
index 42566580f5..7fa94f4174 100644
--- a/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/BaseInvokeDialog.cs
+++ b/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/BaseInvokeDialog.cs
@@ -4,6 +4,7 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
+using Microsoft.Bot.Builder.Dialogs.Declarative;
using Microsoft.Bot.Expressions;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
@@ -16,12 +17,13 @@ namespace Microsoft.Bot.Builder.Dialogs.Adaptive.Actions
public abstract class BaseInvokeDialog : Dialog, IDialogDependencies
{
// Expression for dialogId to call (allowing dynamic expression)
- private string dialogIdToCall;
-
- public BaseInvokeDialog(string dialogIdToCall = null, IDictionary bindingOptions = null)
+ public BaseInvokeDialog(string dialogIdToCall = null, object bindingOptions = null)
: base()
{
- this.dialogIdToCall = dialogIdToCall;
+ if (dialogIdToCall != null)
+ {
+ this.Dialog = dialogIdToCall;
+ }
if (bindingOptions != null)
{
@@ -36,7 +38,7 @@ public BaseInvokeDialog(string dialogIdToCall = null, IDictionary
[JsonProperty("options")]
- public object Options { get; set; } = new JObject();
+ public ObjectExpression