将带有的数据库字符串值放入 wpf文本框中

本文关键字:wpf 文本 数据库 字符串 | 更新日期: 2023-09-27 18:24:32

我正在使用.edmx创建一个用于数据库连接的小型应用程序。

在我的数据库中,我创建了一个字符串,其示例值为:

this is:'r'nA new line

当我调用这个值(在调试中)时,我看到这个值被更改为

this is:''r''nA new line

导致wpf文本框显示

this is:'r'nA new line

而不是

this is:
A new line

有没有想过我在这里做错了什么?

编辑:

Windows 8.1
VS2013 Express
SQL Server Express (LocalDb)

这些值通过t-SQL命令存储在数据库中。(我仍在项目的启动阶段)

Insert into Atable
 (ID, value)
VALUES
 (1, 'this is:'r'nA new line')

将带有的数据库字符串值放入
 wpf文本框中

因为在sql中'r并不意味着什么特别。在c#中,'r与不可打印的ascii字符#10相同。你试图制作的是一个"转义序列",它只存在于c#中。

如果您在c#中创建转义字符并将其保存到sql中,它将很好地读回。但是,如果您在sql中键入转义符,它将不是您所期望的。

因此,在sql查询中,您可以执行以下操作:

select 'this is:' + CHAR(13) + CHAR(10) + 'A new line' -- same as "'n'r" in c#

在c#中,它将是

string message = "this is'r'nAnew line"

或者,更好的是,使用内置的

string message = "this is" + Environment.NewLine + "A new line";