[ad_1]
नमस्ते।
JSON बनाते समय मुझे त्रुटि हुई। त्रुटि यह है कि ‘ValueAddedService’ प्रकार का मान System.Collections.Generic.List(Of ValueAddedService) में परिवर्तित नहीं किया जा सकता है।
साथ ही दिनांक और समय “messageDateTime =”\/Date(1674459281468)\/” दिनांक समय प्रारूप नहीं है जैसे “2023-01-19T11:20:27+08:00”
कृपया उपरोक्त दोनों मुद्दों के संबंध में मुझे सलाह दें
धन्यवाद
मादीन
मैंने क्या प्रयास किया है:
Dim root As List(Of Root) = New List(Of Root)() Dim PickupAddress As PickupAddress = New PickupAddress With { .name = "xxy Company LTD", .address1 = "1, 11,13, Jalan Rajawali", .address2 = "Bandar Puchong Jaya", .city = "Puchong", .country = "MY", .district = "Puchong", .state = "Selangor", .postCode ="47000", .email = "sales@xxy.com", .phone = "069076 1651" } Dim shipperAddress As ShipperAddress = New ShipperAddress With { .name = "xxy Company LTD", .address1 = "1, 11,13, Jalan Rajawali", .address2 = "Bandar Puchong Jaya", .city = "Puchong", .country = "MY", .district = "Puchong", .state = "Selangor", .postCode ="47000", .email = "sales@xxy.com", .phone = "069076 1651" } Dim consignement As ConsigneeAddress = New ConsigneeAddress With { .name = "Poliklinik Gunwant", .address1 = "Lot 9797, Jalan Menteri", .address2 = "Sungai Besar Selangor", .city = "Sungai Besar", .state = "Selangor", .district = "Sungai Besar", .country = "MY", .postCode = "46000", .email = "", .phone = "092548 3257" } Dim valADDService As ValueAddedService = New ValueAddedService With { .vasCode = "PPOD"} Dim valueAddedServices As List(Of ValueAddedServices) = New List(Of ValueAddedServices)() valueAddedServices.Add(New ValueAddedServices With {.valueAddedService = valADDService}) Dim shipmentPieces As List(Of ShipmentPiece) = New List(Of ShipmentPiece)() shipmentPieces.Add(New ShipmentPiece With { .pieceID = "1"}) Dim shipItem As List(Of ShipmentItem) = New List(Of ShipmentItem)() shipItem.Add(New ShipmentItem With { .consigneeAddress = consignement, .shipmentID = "123456789", .packageDesc = "abc", .totalWeight = "1", .totalWeightUOM = "KG", .dimensionUOM = "CM", .productCode = "PDO", .currency = "USD", .remarks = "", .isMult = "true", .deliveryOption = "C", .shipmentPieces = shipmentPieces }) Dim hdr As Hdr = New Hdr With { .accessToken ="123456789", .messageDateTime ="\/Date(1674459281468)\/", .messageLanguage = "en", .messageType = "SHIPMENT", .messageVersion = "1.4" } Dim bd As Bd = New Bd With { .pickupAccountId = "123587", .soldToAccountId = "325784", .pickupDateTime = "\/Date(1674459281468)\/", .handoverMethod = "1", .pickupAddress = PickupAddress, .shipperAddress = shipperAddress, .shipmentItems = shipItem } Dim manifesto As ManifestRequest = New ManifestRequest With { .bd = bd, .hdr = hdr } root.Add(New Root With { .manifestRequest = manifesto }) Dim serializer As JavaScriptSerializer = New JavaScriptSerializer() v_jsonData = "" v_jsonData = serializer.Serialize(root) Me.txtJsonData.Text = serializer.Serialize(root)
परिणाम नीचे होना चाहिए.
{ "manifestRequest": { "hdr": { "messageType": "SHIPMENT", "messageDateTime": "2023-01-19T11:20:27+08:00", "accessToken": "f0108fb771fa4d269e10d8702f487b93", "messageVersion": "1.4", "messageLanguage": "en" }, "bd": { "pickupAccountId": "5264574522", "soldToAccountId": "5264574522", "pickupDateTime": "2023-01-19T11:20:27+08:00", "handoverMethod": 1, "pickupAddress": { "name": "Jet Pharam", "address1": "adddress1", "address2": "address2 .", "city": "puchong", "state": "selangor", "district": "puchong", "country": "MY", "postCode": "46000", "phone": "123456789", "email": "abc@jetpharma.com" }, "shipperAddress": { "name": "Jet Pharam", "address1": "Address1", "address2": "Address2", "city": "Puchong", "state": "Selangor", "district": "Puchong", "country": "MY", "postCode": "46000", "phone": "123456789", "email": "abc@jetpharma.com" }, "shipmentItems": [ { "consigneeAddress": { "name": "Poliklinik Gunwant", "address1": "Lot 9797, Jalan Menteri", "address2": "Lot 9797, Jalan Menteri", "city": "Sungai Besar", "state": "Selangor", "district": "Sungai Besar", "country": "MY", "postCode": "45300", "phone": "123456789", "email": "abc@xxx.com" }, "shipmentID": "MYJMS346524660", "packageDesc": "asdasad", "totalWeight": 1, "totalWeightUOM": "G", "dimensionUOM": "CM", "productCode": "PDO", "currency": "MYR", "remarks": "JETPharma", "isMult": "true", "valueAddedServices": { "valueAddedService": [ { "vasCode": "PPOD" } ] }, "deliveryOption": "C", "shipmentPieces": [ { "pieceID": 11 } ] } ] } } }
समाधान 1
अपना कोड JSON क्लास कनवर्टर के माध्यम से चलाएँ और यह निम्नलिखित संरचनाएँ तैयार करेगा:
Public Class Bd Public Property pickupAccountId As String Public Property soldToAccountId As String Public Property pickupDateTime As DateTime Public Property handoverMethod As Integer Public Property pickupAddress As PickupAddress Public Property shipperAddress As ShipperAddress Public Property shipmentItems As List(Of ShipmentItem) End Class Public Class ConsigneeAddress Public Property name As String Public Property address1 As String Public Property address2 As String Public Property city As String Public Property state As String Public Property district As String Public Property country As String Public Property postCode As String Public Property phone As String Public Property email As String End Class Public Class Hdr Public Property messageType As String Public Property messageDateTime As DateTime Public Property accessToken As String Public Property messageVersion As String Public Property messageLanguage As String End Class Public Class ManifestRequest Public Property hdr As Hdr Public Property bd As Bd End Class Public Class PickupAddress Public Property name As String Public Property address1 As String Public Property address2 As String Public Property city As String Public Property state As String Public Property district As String Public Property country As String Public Property postCode As String Public Property phone As String Public Property email As String End Class Public Class Root Public Property manifestRequest As ManifestRequest End Class Public Class ShipmentItem Public Property consigneeAddress As ConsigneeAddress Public Property shipmentID As String Public Property packageDesc As String Public Property totalWeight As Integer Public Property totalWeightUOM As String Public Property dimensionUOM As String Public Property productCode As String Public Property currency As String Public Property remarks As String Public Property isMult As String Public Property valueAddedServices As ValueAddedServices Public Property deliveryOption As String Public Property shipmentPieces As List(Of ShipmentPiece) End Class Public Class ShipmentPiece Public Property pieceID As Integer End Class Public Class ShipperAddress Public Property name As String Public Property address1 As String Public Property address2 As String Public Property city As String Public Property state As String Public Property district As String Public Property country As String Public Property postCode As String Public Property phone As String Public Property email As String End Class Public Class ValueAddedService Public Property vasCode As String End Class Public Class ValueAddedServices Public Property valueAddedService As List(Of ValueAddedService) End Class
इसलिए JSON डिसेरिएलाइज़ेशन रूट का एक उदाहरण लौटाने की अपेक्षा करता है जिसमें एक मेनिफेस्ट रिक्वेस्ट शामिल है, संग्रह नहीं – जो एक उप वर्ग में निहित है।
जब आप JSON को डिसेरिएलाइज़ करते हैं, तो आपको संपूर्ण डेटा मिलता है – न कि केवल वह अंश जिसमें आपकी रुचि हो सकती है!
समाधान 3
आप वैल्यूएडेडसर्विस के एक उदाहरण को डिसेरिएलाइज़ करने और इसे एपीआई में पास करने का प्रयास कर रहे हैं। यह ठीक होगा यदि आप एक ही उदाहरण के साथ काम कर रहे थे, लेकिन आप वास्तव में एक सूची में डिसेरिएलाइज़ करते हैं, जिसे आप एपीआई को भेज रहे हैं।
समाधान 2
[ { "Version":"1.1", "TranDtls":{ "TaxSch":"GST", "SupTyp":"B2B", "IgstOnIntra":"N", "RegRev":"N", "EcmGstin":null }, "DocDtls":{ "Typ":"INV", "No":"1952", "Dt":"22/02/2024" }, "SellerDtls":{ "Gstin":"29ACUPU9257A1ZT", "LglNm":"DORESWAMY VELMURUGAN", "TrdNm":"SWARNALAKSHMI", "Addr1":"MUTHU COMPLEX, H B ROAD,", "Addr2":"HEGGADADEVANAKOTE", "Loc":"HEGGADADEVANAKOTE", "Pin":571114, "Stcd":"29", "Ph":"9242889917", "Em":"thegreatvelu@gmail.com" }, "BuyerDtls":{ "Gstin":"32CEHPB9957C1ZM", "LglNm":"GOLDEN INTERLOCK", "TrdNm":"GOLDEN INTERLOCK", "Pos":"32", "Addr1":"1/11, valliyoorkavu", "Addr2":"mananthavady", "Loc":"mananthavady", "Pin":670645, "Stcd":"32", "Ph":null, "Em":null }, "ValDtls":{ "AssVal":44687, "IgstVal":12512, "CgstVal":0, "SgstVal":0, "CesVal":0, "StCesVal":0, "Discount":0, "OthChrg":0, "RndOffAmt":0, "TotInvVal":57199 }, "ItemList":[{ "SlNo":"1", "PrdDesc":"Tyre", "IsServc":"N", "HsnCd":"40112010", "Barcde":null, "Qty":2, "Unit":"NOS", "UnitPrice":22343.50, "TotAmt":44687, "Discount":0, "PreTaxVal":0, "AssAmt":44687, "GstRt":28, "IgstAmt":12512, "CgstAmt":0, "SgstAmt":0, "CesRt":0, "CesAmt":0, "CesNonAdvlAmt":0, "StateCesRt":0, "StateCesAmt":0, "StateCesNonAdvlAmt":0, "OthChrg":0, "TotItemVal":57199 } ] } ]
[ad_2]
コメント