【问题标题】:select a string from sql server with slash it include a backslash从带有斜杠的 sql server 中选择一个字符串,它包括一个反斜杠
【发布时间】:2014-08-13 10:19:46
【问题描述】:

我的 sql server 中有这样的数据

http://172.xx.xx.xx/Lesson1Makeview.pdf

我的查询是这样的:

select mag_link from [_DB].[dbo].[magazine_details]

然后当我输入 json 时,我得到了

http:\/\/172.16.11.29:7777\/Lesson1Makeview.pdf

我得到的链接中有一个\。

我将如何删除它?

我使用 c#

【问题讨论】:

  • 你的代码在哪里?为什么用 JSON 标记?
  • 首先这跟json有关系吗?您没有显示 C# 代码,只有您的 sql 查询。它是否作为字符串返回?然后你可以使用 string.Replace("\", "") 为什么它首先与 \ 一起存储?我对您的问题投了反对票,因为您不清楚您真正想做什么,而且您似乎不知道自己在做什么。
  • "那么当我输入 json 时我就有了";好的;您使用什么工具或代码“放入 json”?

标签: c# json wcf


【解决方案1】:

这是 JSON 中完全有效的表示; 没有必要/ 转义为\/,但这样做有效

如果您不想执行不必要的转义,那么:使用不这样做的工具。 JSON.NET 没有添加这个,例如:

var obj = new Foo { url = "http://foo.com" };
var json = JsonConvert.SerializeObject(obj);

结果是字符串:

{"url":"http://foo.com"}

但是,上面的json和下面的json都会反序列化为同一个意思

{"url":"http:\/\/foo.com"}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 2016-08-30
    相关资源
    最近更新 更多