2012-03-27 10 views
0

私たちのアプリケーションの中で、単純なlistview/detailview機能を実装しようとしています。私はアイテムのリストを表示するMVCContribグリッド(btw素晴らしいです!)を使用しています。グリッドの各行の横には、ユーザーが項目を編集できる編集リンクがあります。ユーザーが編集リンクをクリックすると、アイテムの編集に使用された詳細フォームが返されます。何らかの理由で、私はクリックされたcustomerIdをコントローラに送ることができません。コントローラは、編集リンクをクリックするたびにnullになります。HTML.ActionLinkがクリックされたときにMVCContribグリッドの値が常にnullになる

Html.Grid(Model.CheckAccounts) 
    .Columns(column.For(c => {Html.ActionLink(
    "Edit", 
    "CustomerDetails", 
    "CustomerManagementController", 
    new {Id=customer.Id})); 
column.For(c => c.Name); 
column.For(a => c.AccountNumber); 
}).Render(); 

はここに私のコントローラのアクションです:

私のグリッドはとても似構成している私はすべてのサンプルやブログは、私が見てきたので、完全に混乱している

[HttpGet] 
     public ActionResult CustomerDetails(long? Id) 
     { 
      //fetch the customer from repo... 
      //return it to the client 
      return View(model); 
     } 

、アクセス私がそれをやっているのと同じ方法でグリッドからデータを取得します。助けてもらえますか?

答えて

0

私は自分の質問に答えることを憎むが、私はアクションリンクを変更することでこの問題を解決することができました:?私は間違ったアクションリンクは、」長さ= 24を見た後に生成されていたが実現

{Html.ActionLink(
     "Edit", 
     "CustomerDetails", 
     "CustomerManagement", 
     new {Id=customer.Id})); 

URLの末尾に「queryString」というパラメータがあります。

グリッドが正常に動作しています。

関連する問題