C# 把双“”放进去";`成串

C# 把双“”放进去";`成串,c#,string,C#,String,我有这个json object tmp = new { name = Name, type = Type, parentId = ParentId, Location= string.Format("[\"{0}\"]" ,Location1) }; string json = JsonConver

我有这个json

object tmp = new
            {
                name = Name,
                type = Type,
                parentId = ParentId,
                Location= string.Format("[\"{0}\"]" ,Location1)
            };
            string json = JsonConvert.SerializeObject(tmp);
这个字符串引起了问题

string Location = string.Format("[\"{0}\"]" ,Location1)
结果是

{...,"Location":"[\"Location5201\"]"}
如果我摆脱了
\

然后输出为

{...,"Location":"[Location5201]"}
我想要的输出应该是

{...,"Location":["Location5201"]}
如何将
放入上面的字符串中?

[“某物”]
是“一个字符串数组”的JSON:


如果
Location1
的类型不是
string

Location = new []{ Location1.ToString() }


问题是
Location
属性实际上是字符串数组,而不是字符串。
你不需要自己用绳子来组成它。相反,您需要将其声明为数组:

Location = new[] { Location1 }

在尝试以一种最初不正确的方式使用代码实现某些东西之前,您可能希望花更多的时间阅读JSON格式及其在C#中的序列化

问题是
Location
实际上是一个数组,而不是一个字符串。你不需要自己用绳子来组成它。您需要创建一个数组:
Location=new[]{Location1}
。你可能想花更多的时间阅读JSON格式及其在C#中的序列化,然后再尝试以一种最初不正确的方式使用代码实现一些东西:)当你说结果是,你是否在调试器窗口中查看它?@RyanWilson我正在运行一些测试日志向我显示results@YeldarKurmangaliyev这解决了我的问题,考虑添加这个问题的答案:“Wojtkt我很高兴它帮助:”Esko OP说他需要引用双值,所以我们需要某种方式强制它变成一个字符串——不管我们使用<代码> String .Falm()>代码>,<代码> toString()/<代码>,或者在初始化器中转换值,这是重要的吗?我现在明白了,他实际上并不是在谈论一个
系统。Double
,更新了答案
Location = new []{ string.Format("{0}", Location1) }
Location = new[] { Location1 }