2012-04-01 23 views
0

私は店舗データを入力するためにプロキシからasp.netアクションを呼び出しています。 私はurlを正しく指定していますが、Actionにget要求を出すと、呼び出しにquery string paramsが追加されています。これにより404エラーが発生します。私は以下の私のコードを掲載しています 、Asp.Netを呼び出すMVCアクションで店舗を読み込む

Asp.net MVCアクション

public JsonResult SongsList() 
{ 
     List<MusicFileModel> musicFileModels = MusicFileModel.GetAllMusicFiles(); 
     return Json(musicFileModels, JsonRequestBehavior.AllowGet); 
} 

ストアの定義煎茶タッチ2

Ext.define('CloudPlayerUI.store.Songs', { 
extend: 'Ext.data.Store', 
config: { 
    model:'CloudPlayerUI.model.song', 
    proxy: { 
     type: 'ajax', 
     url: '/Home/SongsList', 
     param:'', 
     reader: { 
      type: 'json' 
     } 
    }, 
    autoLoad:true 
} 
}); 

これは、AJAX呼び出しですそれは作られています。私は、アクションは、それが404エラーが生じている私のAJAX呼び出し を行われている任意ののparamsを持っていないためと仮定しています

GET http://localhost/Home/SongsList?_dc=1333338051329&page=1&start=0&limit=25 

。 mvcアクションを呼び出す正しい方法がわかりません。私が間違っていたら私に知らせてください。 何か助けていただければ幸いです。

update: asp.net mvcアクションに同じクエリ文字列paramsを追加しようとしました。それでも404エラーが発生しています。私は新しいURLに任意のクエリ文字列paramsなしで同じURLを開くと、それは私にJsonの結果を返しています。

+0

あなたはGET'のparamsをAJAXコールに煎茶タッチによって追加され '意味しますか?なぜそれは404エラーを引き起こすべきですか? – Jay

+0

私の質問が更新されました。 – mehul9595

+0

純粋なASP.netの問題のようです。 ST2には何の関係もありません。 – Jay

答えて

0

私は問題を把握しました。

404エラーは、ストアで定義されたURL設定パラメータが正しくないことが原因です。また、私はリーダーにrootPropertyを追加しました。 これはプロキシコードの外観です。

Ext.define('CloudPlayerUI.store.Songs', { 
extend: 'Ext.data.Store', 
config: { 
    model:'CloudPlayerUI.model.song', 
    proxy: { 
     url: 'Home/SongsList', //Changes to url 
     type:'ajax', 
     reader: { 
      type: 'json', 
      rootProperty: 'ResponseData' //Addeed reader property. 
     } 
    }, 
    autoLoad:true } 
}); 

Asp.MVCアクションに戻りオブジェクトを構築。

var results = new 
          { 
           Success = true, 
           ResponseData = musicFileModels 
          }; 
     return Json(results, JsonRequestBehavior.AllowGet); 
関連する問題