Текст вашего сообщения проходит через довольно агрессивный анализатор Markdown, который убирает лишние разрывы строк. У вас есть несколько вариантов, как с этим справиться.
Вариант 1
Если вы установите текст в качестве данных канала вместо фактического текста активности, он не будет выполняться через анализатор Markdown:
var text = "Line1\n\nLine2\n\nLine3";
var activity = turnContext.Activity.CreateReply();
activity.ChannelData = new { text };
await turnContext.SendActivityAsync(activity);
Вариант 2
Если вы установите простой текстовый формат, текст не будет проходить через анализатор Markdown:
var text = "Line1\n\nLine2\n\nLine3";
var activity = turnContext.Activity.CreateReply(text);
activity.TextFormat = TextFormatTypes.Plain;
await turnContext.SendActivityAsync(activity);
Вариант 3
Если вы используете данные канала для чего-то другого и не хотите устанавливать простой текстовый формат, вы всегда можете использовать <br/>
вместо \n
:
var text = "Line1<br/><br/>Line2<br/><br/>Line3";