本示例是使用Net core,其它开发平台都类似,我们可以直接使用\n加到字符中就可以实现。
respones.Content = $"您的登录码为【{seed}】, 2分钟内有效,请及时登录。遇到问题可在本号直接留言,会及时回复您!\n●付款时请注意别忘记在备注里写入商品代码\n●付款后2分钟内显示提取码,看不到请直接在这里留言反馈 \n●提取码或者隐藏内容的位置在文章底部,还有一些用户找不到!\n●不要太急,好多付款后没有看到提取码就留言骗子取关了,这样我在公众号也联系不上您了,切记是2分钟内显示,没有必要为这个小钱遭受良心谴责";
例如你在关注文件最下方的公众号后就回复888 就可以收到以上的提示了,是不是换行了?另外小小的提示下,C#中以下代码是错误的:
string val = @"我是换行测试\n我是第二行";
正确的是
string val = "我是换行测试\n我是第二行";
换行机制的原理与注意
微信公众号被动回复里,文本消息用 n 即可换行;模板消息、客服消息接口同样认 n。C# 代码里要注意字符串形式。
- C# 的 @ 前缀是逐字字符串,里面的 n 是字面的反斜杠加 n,不会变成换行符;
- 需要转义生效就用普通字符串"n",或 @ 字符串里保持真实换行;
- 部分接口对 r n 更友好,如遇微信端不换行可把 n 替换为 r n 再试;
- 长文本建议先在本地拼好常量,避免转义层级套娃出错;
- 手机端换行显示正常后,记得再测一次 PC 端微信的显示效果。