2009年12月28日月曜日

ExtJs-66 Ext.data.Writerで。。。meta。2

あら。先日の実装から はや2W。
ソース壊れたりなんだりしてまたもや牛歩。。。

いまのシステムはサーバサイドはASP.NETC#で組んでるのだが、
Jsonのシリアライズがどうも。。ってなっててそれはJson.NETで解決済みだったんだけど
いままでは一行ごとのシステムコミットで実装しててサーバサイドへのリクエストは単一行情報のみだった。

現状の実装ではWriterをしようすることで
複数行のCreate、複数行のUpdateが可能になり、それぞれのURLへリクエストが送られてくることになる。

わかってないことが二つあった。
①まず、リクエストのなまえってなにでくんのか?
 Ext.data.Writerのソース見ると params[this.meta.root] に突っ込んでる。
 で、WriterのmetaってのはReaderのmetaの複製。これはStoreのコンストラクタでやってる。
 前のえんとりExtJs-65でラップしてるのでシステム内は「rows」ってことになる。a
 サーバサイドでstring reqdata = Request.Form["rows"].ToString();
 でアクセス可能。よしよし。


②Json.netが使えていない。
 ってーのもJobjectクラスのParseメソッドしか触っておらず、
 単一情報だったときは泥臭く、『[{一行情報}]』の『[]』をTrimしてParseにかけてた。
 うごきゃーいいし、ってのりだったのでまったく見ていなかかった。
さて、複数だとこまるー。
 ってことでちゃんとリファレンスを読むとJarrayクラスがある。
 想像通りJobjectの配列返却。問題なし。

ってことでめでたく、、
複数行のCRUD実装のゴールが見え隠れ。

コンテキストメニューの実装を加えればこの開発の基礎周りは出来上がり。
よかった。今日はもう寝る。

0 件のコメント: