[英]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.