2012年1月8日 星期日

一對多物件,使用Listview與RowSpan呈現

前言
合併儲存格這需求,相信很多作Web的人都有碰到過,也有許多文章用不同的方式實作。在ASP.NET Webform來說,基本上不外乎就是三種方式:

  1. GridView在PreRender時針對每一列去檢查並做合併row的動作。
  2. 巢狀的GridView/ListView,來呈現一對多的物件集合關係。
  3. 使用jQuery在HTML Render完後,去做td的RowSpan。

通常合併儲存格要呈現的資料關係,就是一對多的關係,例如:主單與子單、客戶與 訂單、角色與人員等等…這篇文章針對的,就是以Entity為觀念當出發點,當Entity是一對多的集合時,該怎麼樣使用ListView,並用 jQuery來達到rowspan的效果。(jQuery的部份,則是使用黑暗執行緒的以jQuery實現Table相同欄位的上下合併
內容省略


結論
  1. 巢狀的物件集合,需要攤平的時候,可以透過SelectMany來做,不要害怕委派方法跟泛型,了解之後會更能體會設計的藝術與美。
  2. 黑大的文章,向來目標明確,舉例淺顯易懂,程式精簡,且看了不只考試可以得一百分,還能會心一笑,實在是居家旅行,必備良藥。

Sample ProjectListViewRowSpan.zip



原始文章出自於此

沒有留言:

張貼留言