From d964b4810a7313d72b75885fbbda3c4d91ea8d21 Mon Sep 17 00:00:00 2001 From: Viktor Kryzhanovskyi Date: Tue, 11 Jun 2019 19:53:12 +0300 Subject: [PATCH 1/2] Fix NullReference exception when MembersAdded is null --- .../microsoft.bot.builder.solutions/Extensions/ActivityEx.cs | 2 +- .../EnterpriseBotSample/Extensions/ActivityExtensions.cs | 2 +- .../EnterpriseTemplate/Extensions/ActivityExtensions.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs b/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs index a7c3c0dde6..040bbe1b9b 100644 --- a/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs +++ b/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs @@ -36,7 +36,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; } diff --git a/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs b/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs index 5ecf5d9843..75d565e74b 100644 --- a/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs +++ b/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs @@ -32,7 +32,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; } diff --git a/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs b/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs index c886239667..2a6a9ce8a1 100644 --- a/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs +++ b/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs @@ -32,7 +32,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; } From 5f5645661495cf1fb4d08cea17f773c630381fe4 Mon Sep 17 00:00:00 2001 From: Viktor Kryzhanovskyi Date: Tue, 11 Jun 2019 19:56:46 +0300 Subject: [PATCH 2/2] Fix NullReference exception with correct version --- .../microsoft.bot.builder.solutions/Extensions/ActivityEx.cs | 2 +- .../EnterpriseBotSample/Extensions/ActivityExtensions.cs | 2 +- .../EnterpriseTemplate/Extensions/ActivityExtensions.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs b/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs index 040bbe1b9b..2c5156be65 100644 --- a/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs +++ b/lib/csharp/microsoft.bot.builder.solutions/microsoft.bot.builder.solutions/Extensions/ActivityEx.cs @@ -36,7 +36,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; } diff --git a/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs b/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs index 75d565e74b..f1777ddaad 100644 --- a/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs +++ b/templates/Enterprise-Template/src/csharp/EnterpriseBotSample/EnterpriseBotSample/Extensions/ActivityExtensions.cs @@ -32,7 +32,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; } diff --git a/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs b/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs index 2a6a9ce8a1..c4e6f4dc2d 100644 --- a/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs +++ b/templates/Enterprise-Template/src/csharp/EnterpriseBotTemplate/EnterpriseTemplate/Extensions/ActivityExtensions.cs @@ -32,7 +32,7 @@ public static bool IsStartActivity(this Activity activity) if (activity.Type == ActivityTypes.ConversationUpdate) { // When bot is added to the conversation (triggers start only once per conversation) - if (turnContext.Activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) + if (activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id)) { return true; }