簡體   English   中英

生成JSON XML字符串C#

[英]Generate JSON XML string c#

我正在嘗試在文檔中設置用戶信息。 我將在JSON字符串中設置所有用戶信息,並將該字符串提供給soap操作

 'Tourist'=>{"1":{"Surname":"TestG","Name":"Tesre","Sex":"man","Birthday":"19701106",
"PassportS":"TT","PassportN":"34342342","Viza":"0","DateTake":"20031113",
"DateIssue":"20281116","WhoTake":"Testes"}}', 

然后我嘗試將其設置為c#中的字符串鏈接

 string tourist= "Tourist'=>{"'1'":{"'Surname'":"'TestG'","'Name'":"'Tesre'","'Sex'":"'man'","'Birthday'":"'19701106'","'PassportS'":"'TT'","'PassportN'":"'34342342'","'Viza'":"'0'","'DateTake'":"'20031113'","'DateIssue'":"'20281116'","'WhoTake'":"'Testes'"}}";  

但是我得到這個錯誤:

CS1012 C#和ASP.NET MVC 3.0字符文字錯誤中的字符過多

首先,最好使用某種形式的JSON序列化程序來完成繁重的工作。 我正在使用Newtonsoft.JSON,但是我確定您可以使用任何序列化程序。

基本上,他們使用C#類,並從公共屬性(上面帶有“ get”的公共項)創建JSON字符串。

就您的問題而言,確切地說,您正在創建的字符串格式錯誤:

string tourist= **"Tourist'=>{"**'1'":{"'Surname'":"'TestG'","'Name'":"'Tesre'","'Sex'":"'man'","'Birthday'":"'19701106'","'PassportS'":"'TT'","'PassportN'":"'34342342'","'Viza'":"'0'","'DateTake'":"'20031113'","'DateIssue'":"'20281116'","'WhoTake'":"'Testes'"}}";

第一部分,“ Tourist'=> {”,是一個帶有開頭和結尾引號的字符串。 其他一切都使編譯器感到困惑。 您要么需要使用“ verbatim字符串文字”,就可以通過將引號加倍來對其進行轉義:

string tourist = @"Tourist'=>{""'1'"":{""'Surname'"":""'TestG'"",""'Name'"":""'Tesre'"",""'Sex'"":""'man'"",""'Birthday'"":""'19701106'"",""'PassportS'"":""'TT'"",""'PassportN'"":""'34342342'"",""'Viza'"":""'0'"",""'DateTake'"":""'20031113'"",""'DateIssue'"":""'20281116'"",""'WhoTake'"":""'Testes'""}}";

或者,您可以使用普通字符串,並用斜杠將引號轉義:

string tourist = "Tourist'=>{\"'1'\":{\"'Surname'\":\"'TestG'\",\"'Name'\":\"'Tesre'\",\"'Sex'\":\"'man'\",\"'Birthday'\":\"'19701106'\",\"'PassportS'\":\"'TT'\",\"'PassportN'\":\"'34342342'\",\"'Viza'\":\"'0'\",\"'DateTake'\":\"'20031113'\",\"'DateIssue'\":\"'20281116'\",\"'WhoTake'\":\"'Testes'\"}}";

但是,我不確定為什么您仍然引用引號引起來的字符串。 您應該能夠刪除內部的雙引號,而只需使用單引號即可:

string tourist = @"Tourist'=>{'1':{'Surname':'TestG','Name':'Tesre','Sex':'man','Birthday':'19701106','PassportS':'TT','PassportN':'34342342','Viza':'0','DateTake':'20031113','DateIssue':'20281116','WhoTake':'Testes'}}";

(您可能想看看開頭的“ Tourist'=>”。這里的單引號看起來是錯誤的。)

暫無
暫無

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

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