![](/img/trans.png)
[英]How can I change the linebreaks from a multiline textbox to HTML <br /> tags?
[英]Convert linebreaks from multiline textbox value stored in MS SQL Server to HTML
好的,我将多行文本框的值存储在SQL Server中nvarchar(1000)类型的[txt]列中。
在这种情况下,多行文字为:
亲爱的先生,
欢迎来到我们的平台。
最好,我们
将结果保存到MSSQL后,我运行查询以选择值。 当我直接从SQL Server Management Studio的查询结果中复制[txt]列的值并将其粘贴到Notepad ++中时,我会再次看到原始文本。 同样,再次从数据库中加载文本并将其分配给多行文本框也可以正常工作。
但是,在后面的代码中,我将数据库列[txt]的值分配给字符串变量(而不是从文本框分配给该变量):
Dim mailContent as String = row.txt
然后在电子邮件中发送此值,则电子邮件收件人会看到没有换行符的文本,因此:
尊敬的先生,欢迎来到我们的平台。 最好,我们
我在下面尝试了所有不同的场景:
Dim registryTA As New registryTableAdapters.registryTableAdapter
Dim registryDT As registry.registryDataTable = registryTA.GetDataByUserid(_userid)
Dim mailcontent As String
mailcontent = registryDT(0).invitetext.Replace(vbLf, "<br/>").Replace(vbCrLf, "<br/>")
mailContent = mailContent.Replace(Environment.NewLine, "<br/>")
mailContent = mailContent.Replace("\r\n", "<br/>")
mailContent = Server.HTMLEncode(mailContent)
mailContent = Server.HTMLDecode(mailContent)
mailContent = mailContent.Replace(vbCrlf, "<br/>")
最好是,我不想更改在MSSQL中/从MSSQL中存储或检索数据的方式(如此处 ),那么如何将[txt]的当前值转换为HTML格式并获取换行符?
似乎文本内容中可能只有\\n
。 尝试将\\n
替换为</br>
。 尝试这个,
mailContent = mailContent.Replace(vbLF, "<br/>").Replace(vbCrlf, "<br/>")
替换SQL select查询中的换行符
REPLACE(Account.AcAddress,CHAR(10),'<br/>')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.