static void DoSomething(ClientContext SPClientContext, ListItem ItemChanged, TraceWriter log)
        {
            string disBody = string.Empty;

            // Read the post Body
            disBody = ItemChanged["Body"].ToString();
            log.Info($"---- Body: " + disBody);

            // Make a stream of the body text
            byte[]       disBodyByteArray = System.Text.Encoding.UTF8.GetBytes(disBody);
            MemoryStream disBodyStream    = new MemoryStream(disBodyByteArray);

            log.Info($"---- Body For Moderation: " + disBody);

            // Get the Moderation from Azure and modify the Body
            AzureContentModerationResults myModeration = CheckContentForModeration(disBodyStream);
            string myModifiedBody = ModifyText(myModeration.AutoCorrectedText, myModeration);

            log.Info($"---- Body Moderated: " + myModifiedBody);

            // Send back the modified Body to SharePoint
            ItemChanged["Body"] = myModifiedBody;
            ItemChanged.Update();
            SPClientContext.ExecuteQuery();
            log.Info($"---- Item Moderated");
        }
        static string ModifyText(string InputString, AzureContentModerationResults ModerationResult)
        {
            foreach (Term oneWord in ModerationResult.Terms)
            {
                string termModified = oneWord.term.Remove(1);
                for (int charCount = 1; charCount < oneWord.term.Length; charCount++)
                {
                    termModified += "*";
                }
                InputString = InputString.Replace(oneWord.term, termModified);
            }

            return(InputString);
        }