2016-07-20 17 views
1

を内のオブジェクトへの私の文字列をデシリアライズエラーここで私は私の文字列をデシリアライズしようとしているC#

LicenseName = 10 &開始日= 7%2F20%の2F2016 &終了日= 09パーセント2F28%の2F2016

このオブジェクトには、この方法

var serializer = new JavaScriptSerializer(); 
     ConsumedUserLicense jsonObject = serializer.Deserialize<ConsumedUserLicense>(licenseDetails); 

を用い

public class ConsumedUserLicense 
{ 
    public int LicenseId { get; set; } 
    public string LicenseName { get; set; } 
    public DateTime StartDate { get; set; } 
    public DateTime EndDate { get; set; } 
} 

が、私は原始的

「無効なJSONというエラーになっています:LicenseNameを。

+1

その文字列が有効なJSONではありません。それは*無効な* JSONでもありません。どこから手に入れましたか?それはクエリ文字列ですね。さあ、フェスアップ。私たちはここですべての友人です。 –

+0

Javascriptで$( '#form).serialize()を使用しました。私は何をしなければならないのですか? – user1186050

+0

ええ、そのメソッドはJSONではなく(URLのように)正しくエンコードされたクエリ文字列を返します。 JS内のフォームをJSONに直接シリアル化する直接的な方法はありませんが、[この回答](http://stackoverflow.com/a/1184667/424129)がそうするかもしれません。私はそれをテストしていない、あなたを気にして、今、彼らは私の人生のためのいくつかのばかげた形を記入するために私の鳴き声です。 –

答えて

0

JSON文字列が正しいJSON文字列ではありません。 JSONバリデーターにコピー・ペーストして、チェックアウトしてみてください:JSON Formatter and Validator。 json.orgから

オブジェクトは、名前/値のペアの順序なし集合です。オブジェクトは{(左中括弧)で始まり}(右中括弧)で終わります。それぞれの名前の後に:(コロン)と名前/値のペアが、(カンマ)で区切られます。

も参照してください:json.org

関連する問題