1

私の現在の状況を説明させてください

私は SharePoint サイトを持っています。これを MAIN と呼び、サブサイトを SUBMAIN と呼びます。

メインには「a」というリストがあり、サブメインには「b」というリストがあります

両方のリストにまったく同じ列があり、

メイン ページの 1 つの Web パーツに両方のリストのコンテンツ (たとえば、変更日順) を表示する必要があります。

現在、コンテンツ クエリ Web パーツにリスト "a" のコンテンツのみを表示しています (表示方法を変更し、水平方向のマーキーを追加しました)。リスト "b" のコンテンツも同じコンテンツ クエリ Web パーツ (ただし、コンテンツ クエリ Web パーツでそれが不可能な場合は、少なくとも他のオプションを教えてください)

あなたの助けに感謝します

4

4 に答える 4

1

これを行うために SharePoint Designer を使用している場合は、このブログをご覧ください。

独自の Web パーツを作成する場合は、SPList オブジェクトに対して 2 つのクエリを実行します。その後、必要に応じて結果を集計、並べ替えなどを行うことができます。SPList に慣れていない場合は、ここで MSDN の概要を参照してください。

于 2009-04-20T14:42:39.033 に答える
1

2 つの異なるリストの項目を表示する Web パーツを作成しましたが、Scott Price が提案したものと同様のことを行いました。リストごとに SPQuery オブジェクトを使用し、それを使用して DataTable オブジェクトを取得しました。これらのオブジェクトは、Repeater や DataList などで使用できます。2 つのテーブルをマージして、同様のことを行うことができます。

私にとって最大の秘訣は、Web パーツで DataBinding のカスタム テンプレートを設定することでした。そのために、ITemplate インターフェイスを実装するカスタム クラスを作成し、イベント ハンドラーでテンプレート クラスから各項目の HTML を出力しました。次に、テンプレート クラスのインスタンスを作成し、それを DataList などの ItemTemplate プロパティとして設定します。

この投稿この投稿は、そのアプローチをよりよく説明していますが、良い点は、マークアップを完全に制御でき、好きなようにスタイルを設定できることです。

于 2009-04-20T15:52:08.760 に答える
0

独自のソリューションをコーディングすることを検討していない場合は、codeplexでこのWebパーツを検討することをお勧めします。

http://rssaggregator.codeplex.com/

これは実際にはRSSアグリゲーターですが、すべてのSharePointリストにはRSSフィードが組み込まれているため、さまざまなサイトのSharePointリストを集約するためにも使用できます。

于 2009-04-20T22:49:45.650 に答える
0

もう 1 つのアプローチは、SLAM ( SharePoint リスト アソシエーション マネージャー) です。これは、私の会社が作成し、積極的にサポートしているオープン ソース プロジェクトです。SLAM を使用すると、これら 2 つのリストを SQL テーブルに自動的に同期するように構成できます。その時点で、2 つを結合するクエリを作成できます。コンテンツ タイプから作成された 2 つのリストがある場合 (それらには同じフィールドがあるため)、実際にはコンテンツ タイプを非難し、同じ SQL テーブルに両方のリストを含めることができます。

于 2009-06-10T17:36:16.523 に答える