jsonをデシリアライズするスレッドを読んでいて、それを達成するためのさまざまな方法を試しましたが、この作業を行うことはできません。 は、ここで私はこれまで何をやったかです:タイプSystem.Stringは配列ではサポートされていません
クラス
public class oVesselMovement : oVMLocation, IWPConditions, IVessel, IStatus
{
public int wpID { get; set; }
public string charts { get; set; }
public string latNS { get; set; }
public string longEW { get; set; }
public string course { get; set; }
public double toNextWPNM { get; set; }
public double toGoNM { get; set; }
public string eda { get; set; }
public string eta { get; set; }
}
ルートクラス
public class RootVM
{
public List<oVesselMovement> jsnObj { get; set; }
}
JSON
{"jsnObj":[{"vmID":"1","charts":"2111","latNS":"10°29.10 N","longEW":"123°25.83 E","course":"420°","toNextWPNM":0,"toGoNM":"27","eda":"12-15-2016","eta":"11:01"},{"vmID":"2","charts":"2211","latNS":"11°29.10 N","longEW":"124°25.83 E","course":"420°","toNextWPNM":0,"toGoNM":"27","eda":"12-15-2016","eta":"11:01"}]}
デシリアライズ
[WebMethod]
public void saveVMDT(string jsnObj)
{
RootVM rootObj = new JavaScriptSerializer().Deserialize<RootVM>(jsnObj);
foreach (var obj in rootObj.jsnObj)
{
try
{
...
}
私もoVesselMovement[] jsnObj
ではなく無駄にList<oVesselMovement> jsnObj { get; set; }
を変換しようとしました。
私はこのエラーを取得しておいてください。
"{"Message":"Type \u0027System.String\u0027 is not supported for deserialization of an array."....
任意の助けをいただければ幸いです。
[こちら](http://stackoverflow.com/a/25654220/5588347) –
Json.netを使用してください。私はうまくいったコードを試してみた – esiprogrammer