2012-03-11 36 views
0

數據提供者在SQL Server數據庫表X中爲我們提供了動態報告數據。還有一個元數據表Y,它包含報告計數和列(以分號分隔的字符串)。在報告數據表X中,有一個文本字段,它保存所有數據,用分號分隔。提供商這樣做是動態的,我不能影響這種選擇。在MVC3查看錶中動態顯示CSV

我需要:

  • 負載從Y上的元數據
  • 負載從X數據從Y上所選報告
  • 顯示在網頁上的一個表中的數據

你會如何閱讀模型/控制器中的內容並將其顯示在webgrid/table中?對於具有固定列的模型,這很簡單,但列何時動態變化呢?

當前的解決方案(感覺髒)是將數據解析到DataTable中,並從該對象手動輸出視圖中的行和表格單元格。沒有用的WebGrid的,MvcContrib電網等

+0

不要評論你自己的問題,請用最新的信息編輯問題。 – 2012-03-11 16:45:09

回答

0

我選擇瞭解析在我的MVC應用程序表數據到一個特定的三維模型:

基本對象

  • 報告
  • 列定義
  • 數據行

報告包含列定義和行計數列表 整數。它也有一個行列表。每行都有一個列值(單元)列表,在此代碼中總是視爲字符串,並且只使用列定義中的顯示數據類型顯示。我定義的數據類型是例如:文本,日期,數字,鏈接(我們的CRM系統的許多類型的鏈接,accountlink,userlink,orderlink)。我只在需要顯示不同於現有的數據時添加新的數據類型。我可以想象有一天我需要圖表數據類型(例如單元格數據是繪圖點列表)。

這使得報表定義非常靈活,但我可能會犧牲一些性能,而且這純粹是自定義的。我仍然喜歡這種方法的輸入,但是在過去的6-7個月裏沒有任何反應可能意味着這是一個足夠奇怪的場景,讀者應該避免。