[英]Adding string to verbatim string literal
我正在嘗試構造如下的原始json
字符串以在http請求中將其發送出去
var requestContent = @"{
""name"": ""somename"",
""address"": ""someaddress""
}";
與其對名稱和地址值進行硬編碼,我希望從下面的變量中提供它們
string name = "someName";
string address = "someAddress";
但是下面的方法不起作用。 任何想法 ?
var requestContent = @"{
""name"": \" + name \",
""address"": \" + address \"
}";
正確的語法是:
var requestContent = @"{
""name"": """ + name + @""",
""address"": """ + address + @"""
}";
或者,您可以使用string.Format
:
var requestContent = string.Format(@"{
""name"": ""{0}"",
""address"": ""{1}""
}", name, address);
或者,您可以使用實際的JSON序列化器。
您也可以將逐字字符串與插值一起使用:
var requestContent = $@"{{
""name"": ""{name}"",
""address"": ""{address}""
}}";
編輯:為此,您必須確保將要在輸出中的花括號加倍(就像引號一樣)。 另外,先$
,然后@
。
而是使用Newtonsoft.JSON JObject()
類的
dynamic myType = new JObject();
myType.name = "Elbow Grease";
myType.address = "someaddress";
Console.WriteLine(myType.ToString());
將生成JSON字符串為
{
"name": "Elbow Grease",
"address": "someaddress"
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.