2012-05-01 21 views
1

状況、私はJsonResultを返すコントローラに同じページで複数のajax/jsonリクエストを作成しています。MVC3アプリケーションでの複数のAJAXリクエスト

私はこれがセッション状態の問題であることを知っています。私はコントローラクラスに[SessionState(SessionStateBehavior.Disabled)]属性を追加しましたが、何も動作しないように見える、私の2番目のajaxリクエストは、 。

コントローラ:

[SessionState(SessionStateBehavior.Disabled)] 
public class IndexController : Controller 
{} 

2つのJSON方法:

[AcceptVerbs(HttpVerbs.Get)] 
    public JsonResult GetLatestListJSON() 
    { 
     Thread.Sleep(5000); 
     ArticleRepository repo = new ArticleRepository(); 
     IList<ArticleModel> list = repo.GetLatestContent(10); 

     return Json(list, JsonRequestBehavior.AllowGet); 
    } 

    [AcceptVerbs(HttpVerbs.Get)] 
    public JsonResult GetCustomerJSON() 
    { 
     Thread.Sleep(5000); 
     CustomerRepository Repo = new CustomerRepository(); 
     IList<Customer> cust= Repo.GetCustomer(); 

     return Json(cust, JsonRequestBehavior.AllowGet); 
    } 

AJAX呼び出しは、他の一つは、私は '大成功' を見ることを得ることはありません、非常に似ています-alert。

<script type="text/javascript"> 
     $(document).ready(function() { 
      alert('before');    

      $.getJSON("/Index/GetCustomerJSON", null, function (data) { 
       alert('succes'); 
       $("#loadingGifVideo").hide(); 
       $.each(data, function (index, mod) {       

       }); 
      }); 
     }); 

あなたGetCustomerJSON方法でブレークポイントを置くとVisual Studioでこれを実行するとみんなありがとう:)

+0

両方のControllerメソッドにThread.Sleep()呼び出しがあるのはなぜですか? –

+0

それは私が試した解決策の一部でした。もう関係ないですね。 – NeedACar

答えて

0

は、方法は、今までに呼び出されますでしょうか? それはあなたがすべてのエラーをキャプチャすることができるように

EDIT

は、Ajaxの方法にgetJSONから切り替えてみてくださいませ。ように:

$.ajax({ 
    url: "/Index/GetCustomerJSON", 
    dataType: 'json', 
    data: null, 
    success: function (data) { alert('success'); } 
    error: function (data) { alert('error'); } 
}); 

"エラー"アラートが表示されますか?

+0

はい、GetCustomerJSONは呼び出されません:) – NeedACar

+0

私の答えを編集しました。 –

+0

そうしてみましたが、エラーメッセージが表示されました – NeedACar

関連する問題