簡體   English   中英

如何將JSON值分配給字符串變量

[英]How to assign a JSON value to a string variable

某些值以JSON格式保存在DB中,如果我從DB復制它,它看起來像這樣:

[{"id":"FAC2SOUTHX","name":"South District MW        ","description":"South District MW                                           ","selected":true,"required":false,"sortOrder":10}]

現在我想編寫一個單元測試,對於它的模擬對象,我需要傳遞該值,mock值是一個字符串。 但是如果我想將該值賦給字符串變量, C#給出錯誤。 所以我認為我所要做的就是用"@"作為前綴,但也不起作用。 那么我該如何將該值賦給字符串變量。

您必須使用反斜杠對所有qoutes進行注釋,以便將字符串識別為字符串,例如

string s = "My string with \" qouted \" Values";

首先你需要逃避你的字符串。 在每個內部引號之前,你必須使用反斜杠,所以“變成\\”。

然后你可以簡單地使用類似Newtonsoft.Json的東西將該字符串轉換為適當的對象並以這種方式檢查值。

代碼非常簡單,你可以使用類似的東西:

JsonConvert.DeserializeObject<dynamic>(your_string);

你也可以像這樣使用重復的雙引號

string str = @"[{""id"":""FAC2SOUTHX"",""name"":""South District MW        "",""description"":""South District MW                                           "",""selected"":true,""required"":false,""sortOrder"":10}]";

看看這個問題我可以在逐字字符串文字中轉義雙引號嗎?

不要使用@並使用\\來逃避"

string someJson = "[{\"id\":\"FAC2SOUTHX\",\"name\":\"South District MW        \",\"description\":\"South District MW                                           \",\"selected\":true,\"required\":false,\"sortOrder\":10}]"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM