JavaScriptSerializer
を使用してオブジェクトを作成するためにjson文字列を解析しようとしています。私はvb.netでサードパーティのライブラリを使用せずにオブジェクトにjson文字列を解析します。
jsonstr
は、JSON形式のデータである
Dim object As New SomeObject
Dim js As New JavaScriptSerializer
someObject = js.Deserialize(Of Somebject)(jsonstr)
object1.var1 = someObject("somekey")
を考えています。私はnewtonsoft.json
など
編集のようなサードパーティのライブラリを使用することはできません:私は、例えば私のクラス与えられ、いくつかの進歩を遂げプロパティ "name"を持ち、私のjsonはキー "name"を持っています。それはjsonファイルの値に関係なく、オブジェクトプロパティへの文字列を渡します。
Dim object As SomeObject = js.Deserialize(Of SomeObject)(jsonstr)
Dim name As String = object.name //object now holds value for name
もし私のjsonがこのようなものであれば。次のように名前を取得するにはどうすればよいですか?
"value" : {
"validationFactors" : [
{
"name" : "remote_address",
"value" : "127.0.0.1"
}
]
}
私は例えばの名前を取得するためにデシリアライズを呼び出した場合、私はMissingMethodException 取得するので、どのようならば、私は私のダミーのオブジェクトを変更する必要があるとか?おかげ
「私の最後に運がない」とはどういう意味ですか?エラーメッセージはありますか?それのすべてまたは一部がデシリアライズしないのですか? 'no luck'は厄介な問題の説明です – Plutonix
[System.Web.Script.Serialization.JavaScriptSerializer](https://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer)を使うことができます。 MSDNのページで[newtonsoft](http://www.newtonsoft.com/json)を使用することを提案しています。プロジェクトにNuGetを含めることはかなり簡単です。なぜ「第三者の図書館は使えない」という制限があるのですか? – djv
@Plutonix編集を参照してください、私は私の最初の投稿が非常に詳細ではなかったことを実現します。私の謝罪 – ponderingdev