Ниже моя отформатированная строка JSON
{"AliasName": "ysiCountryInfo", "DataClass": {"Описание": "США 111", "Код": "США", "WriteOffTaxPointAdjustment": 0, "IndexationRounding": 6}}
Я бы хотел десериализовать объект в класс ниже
Параметр Явный Вкл.
Опция Строгое Вкл.
Импортирует BaseApp.ysiBaseData
Импортирует Common.DataClasses
Импорт систем
Пространство имен DataClasses
Public Class JSONFormatClass(Of ItemType)
Private _Alias As String
Public Property AliasName() As String
Get
Return _Alias
End Get
Set(ByVal value As String)
_Alias = value
End Set
End Property
Private _DataClass As ItemType
Public Property DataClass() As ItemType
Get
Return _DataClass
End Get
Set(ByVal value As ItemType)
_DataClass = value
End Set
End Property
End Class
Конечное пространство имен
Где свойство «DataClass» - это тип любого класса из «Common.DataClasses».
И все классы в этом имеют Parametrized конструктор, который принимает ByRef LoginCredential Object.
И мой код ниже:
Dim loginData As New ysiLoginData ()
With loginData
.Server = "xxxxx"
.Platform = ServerType.SqlServer
.Database = "xxxx"
.UserName = "xx"
.Password = "xxxxx"
.DeveloperMode = True
End With
Dim SessionKey As New ysiSessionKey (loginData)
Dim strJSON As String = HttpUtility.UrlDecode (context.Request.Form.ToString ())
Dim objJSON As JSONFormatClass (Of ysiCountryInfo) = JsonConvert.DeserializeObject (Of JSONFormatClass (Of ysiCountryInfo)) (strJSON)
Формат строки json: {"AliasName": "ysiCountryInfo", "DataClass": {"Описание": "Соединенные Штаты 111", "Код": "США", "WriteOffTaxPointAdjustment": 0, "IndexationRounding": 6 }}
здесь "ysiCountryInfo" - это тип класса, в который я хотел бы преобразовать свое свойство "DataClass". "ysiCountryInfo" имеет параметризованный конструктор, для которого требуется параметр "ysiSessionKey" по ссылке
Dim objCountryInfo as New ysiCountryInfo (ysiSessionKey)
Я получаю сообщение об ошибке в файле JSONSerializerInternalReader.js JSON в строке # 808
объект createObject = contract.ParametrizedConstructor.Invoke (constructorParameters.Values.ToArray ());
Поскольку constructorParameters.Values равен Null
Пожалуйста, помогите мне решить эту проблему как можно скорее.
Спасибо
Дирен Мистри