3

有沒有人找到一種方法來動態創建使用ExpandoObject,DynamicObject或Reflection.Emit的網格,同時允許CRUD操作?Telerik ASP的動態模型MVC

我能夠使用Reflection.Emit來動態創建我的網格列和顯示數據,但是一旦我嘗試編輯一行,單元格內容就會消失。

任何幫助將不勝感激!

回答

1

有一個項目展示瞭如何在Telerik Grid for ASP.NET MVC中使用動態對象。你可以在這裏找到它:http://www.telerik.com/community/code-library/aspnet-mvc/grid/binding-to-a-collection-of-dynamic-objects-with-mvc3-razor.aspx

+0

你有沒有用'ExpandoObject'或類似的方法試過?我現在遇到了與@JoBot相同的問題: 通過AJAX將網格綁定到'dynamic'('ExpandoObject')後,行就在那裏,但所有單元都是空的,即使返回的JSON數據看起來沒問題。 問題可能是這些對象被序列化爲鍵值結構而不是「真正的」JSON對象嗎? – hangy 2012-05-07 11:50:15

1

我能夠通過使用this代碼來解決問題。 ASP.NET MVC用於生成JSON輸出的正常JavaScriptSerializer類似地將ExpandoObject序列化爲IDictionary<string, object>,以便代替所需的JSON對象,data數組實際上包含鍵值對的列表,Telerik ASP.NET MVC網格無法使用。

+0

對不起,因爲我的第一篇文章MIA,但我被拉進了一個完全不同的項目。 無論如何... @hangy感謝您的建議。當你使用ExpandoObject時,Telerik的MVC網格無法處理鍵值對。 至於我原來的文章,關於修改行時丟失的單元格值,事實證明我犯了一個愚蠢的錯誤,就是沒有添加網格將在\ EditorTemplates中使用的模板。 – JoBot 2012-06-20 17:29:30