2011-09-14 8 views
0

私は、複数のMvcContribグリッドを並べ替える構文を理解できません。私はJeremy Skinnerの勧告がhereであることを知っていますが、Bind属性を使用することですが、それを正しく取得できません。私は私は本当にバインド属性についてのすべてを理解していないと思い複数のMvcContribグリッドをソートするコントローラの構文は何ですか?

public ActionResult Index([Bind](Prefix="grid1")GridSortOptions sort)\\how do I reference the prefix of my second grid? 
{ 
    ViewData["sort"] = sort; 
    var products = _productService.GetAllProducts(); 
    var categories = _categoryService.GetAllCategories(); 

    //Here is where I am stuck 
    if(sort.Column != null) 
    { 
    products = products.OrderBy(sort.Column, sort.Direction); 
    //how do I reference the sort columns of my second grid? 
    } 

    var model = new ContainerModel 
       { 
       Products = products, 
       Categories = categories 
       }; 

    return View(model); 
} 

は、ここに私のコントローラです。 2番目のGridSortOptions引数を追加しようとしましたが、成功しませんでした。

これは私の見解です。

.Sort((GridSortOptions)ViewData["sort"], "grid1")//Grid 1 
.Sort((GridSortOptions)ViewData["sort"], "grid2")//Grid 2 

ありがとう。

+0

これで運がいいですか?私も同様の不具合を抱えています。 –

答えて

1

私は私のポストから私の問題を考え出し:

MVCContrib Grid - Sort(GridSortOptions, prefix) not generating links for sorting

デフォルトのバインダーは、あなたのパラメータを事前に移入されていない可能性があるので、あなたのGridSortoptionsが最終的に何のリンクを意味している、おそらくnullです。

また、2番目のグリッドの2番目のGridSortOptionsパラメータを作成し、Sort()の呼び出しでそれを使用します。

+1

これが機能するには、グリッドごとにプレフィックスを設定して、同じページに並べ替える必要があることを他の人が知っておくと便利です。 '.Sort((GridSortOptions)ViewData [" fooSort "]、" foo ")' – LOAS

+0

良い点LOASのように。 –

関連する問題