2010-05-07 21 views
3

我很驚訝,我不能在網上找到一個解決方案,我可以管理的意見的內容類型。我是否真的必須通過瀏覽器訪問每個任務列表才能添加/修改視圖?管理意見的內容類型(或視圖添加到多個列表)

是否有任何可用的解決方案,可以讓我只定義內容類型的視圖,從而使所有的名單,其中內容類型可對此有何看法?

回答

3

直接地講,沒有,一個視圖可以不被分配給一個內容類型。列表是持有實際視圖集合的東西,以及與其一起創建的相應aspx頁面。視圖的列表也依賴於存在:您不能擁有與列表無關的視圖。也沒有用於將內容類型添加到列表的「事件處理程序」,因此,無論何時將內容類型添加到列表中,都不會出現一些自動處理過程(無論如何,這會非常麻煩必須首先將事件處理程序附加到列表中!)。

這並不是說你必須在完成任務的UI手動渣土約,雖然。在類似於自定義代碼工作流的情況下使用對象模型,可以掃描整個SPWeb,並在具有指定內容類型的每個列表上創建一個新視圖。您只需要一個具有單一代碼活動的工作流程,該代碼活動遍歷SPWeb.Lists中的所有SPLists,並檢查SPList是否具有與您的目標內容類型同名的內容類型。如果確實如此,請使用您需要的參數創建一個新的SPView。由於不能簡單地創建一個SPView並將其克隆,因爲SPView必須與列表關聯,克隆SPView只需將其克隆到同一列表中,則必須在每個循環中運行整個SPView創建。但是你只需要寫一次,系統就需要多次運行它。而天堂,它肯定會比那些不得不在UI中跳舞幾個小時的事情做得更有成效。

只要您需要重新確定該SPView的存在,只需運行工作流。

+0

當然,這是可以通過編程實現的。好的,當內容類型添加到列表中時它不會自動發生,但是可能有一種解決方案可以讓您定義一個視圖,自動將這些視圖添加到當前列表中。 – 2010-05-07 14:08:34

相關問題