2011-12-19 11 views
0

私はrazorとVB.NETでMVC3でグリッドを作成しようとしています。通常のGridはうまく動作し、並べ替えとページ付けはうまくいきますが、Ajaxバインディングをしようとすると、次のページに行くときにエラー500 - 内部サーバーエラーが発生します。Telerikグリッド、カミソリ、AjaxバインディングモードのVB.NET

私は間違っていますか?

これは私のコントローラである:

Function Index() As ViewResult 
    Return View(Me.orgRepository.GetOrgs()) 
End Function 

<GridAction()> 
Function AjaxGrid() As ActionResult 
    Return View(New GridModel(Of hdmtORG)() With 
     { 
      .Data = Me.orgRepository.GetOrgs() 
     }) 
End Function 

そして、これが私の見解です

@Code 
'declare the grid and enable features 
Dim grid = Html.Telerik().Grid(Model) _ 
    .Name("Grid") _ 
    .Pageable() _ 
    .Sortable() _ 
    .Filterable() _ 
    .DataBinding(Function(dataBinding) dataBinding.Ajax.Select("AjaxGrid", "Org")) 
    'Add grid columns 
    grid.Columns(Function(columns) columns.Bound(Function(o) o.orgNAME).Width(200)) 
    grid.Columns(Function(columns) columns.Bound(Function(o) o.orgIMAGE).Width(200)) 
    grid.Columns(Function(columns) columns.Bound(Function(o) o.orgUNIT).Width(200)) 

    'Render the grid 
    grid.Render() 
End code 

はあなたの助けをいただき、ありがとうございます。

答えて

0

私はVBでプログラムしませんが、より多くのこのようなコントローラ機能を見てはいけません。

<GridAction()> 
Function AjaxGrid() As ActionResult 
    Return View(New GridModel(Of hdmtORG)() From 
     { 
      Data = Me.orgRepository.GetOrgs() 
     }) 
End Function 
+0

おかげでダニエルが、あなたのコードはコンパイルされません。 – Scheveningen

+0

@Scheveningen、申し訳ありませんが、私が書いたコードは動作しません。 Is not With .Dataは単一のプロパティに使用されますが、返す必要があるのはIEnumerableですか? C#でそれが返されるビュー(新しいGridModel { データ= orgRepository.GetOrgs() }); – Daniel

+0

ダニエルありがとう、私のコードはokです。私は問題を見つけた!それは循環参照であり、私はそれを修正する方法を考え出しました、ありがとう!私の同じコード(またはあなたのC#で)を使用すると、すべてのデータ(orgId、orgNameなど)を返す代わりに、いくつかのフィールド(たとえばorgNameとorgDate)を選択する方法を知りますか? – Scheveningen

関連する問題