2008-09-16 3 views
1

私は、外部サービスからデータを取得するSharepointのWebパーツを構築しました。Sharepoint:「互換性のある」UIの非Sharepointコンテンツのリストを表示する最も良い方法は?

私は「DataFormWebPart」を認識していますが、正しく動作させることができませんでした。それは有効なデータソースを必要とし、私はWebサービス呼び出しの結果から1つを構築することができませんでした...問題の一部は、私のWebサービスラッパーがXML戻り情報を公開しないで、むしろ私は。実際のオブジェクトをデータソースに変換したり、オブジェクトデータから「汎用」データソースを作成したりする簡単な方法はありません。

SPGridViewを使用して同じUIを取得することはできますが、グリッドコントロールはスマートにはあまり効果がありません。また、すべてのフィールドを独自の列に強制します。私は複雑なレンダリングを持つ単一のセルとして各リストアイテムをレンダリングすることを望んでいます(StackOverflowがその質問リストを表示する方法など)。また、できるだけ多くのSharepoint標準UIを取得したいと思います。ソート、フィルタリング、およびページングの制御

だから最初に:これを行うSharepointコントロールを作成した人がいましたか?共有するサンプルコードがある場合は、そうでない場合:MSが提供しているか、または外部ライブラリで利用できるかどうか、いくつかの有用なコントロールを見落としていますか?

ありがとうございます! スティーブ

答えて

2

のSharepoint: 「互換性」UIで非SharePointコンテンツのリスト を表示するための最良の方法?

は、SharePoint Webコントロールに組み込まれて見てみましょう:

Microsoft.SharePoint.WebControls Namespace

これは、SharePointで使用されるすべてのコントロールが含まれています。私はあなたにもっと話したいと思いますが、ドキュメントは非常に徹底的です。

0

SharePointの問題は、これを行うさまざまな方法があることです。あなたのデータがあまり頻繁に変更されておらず、過度に大きくない場合は、それをリストに入力して表示することを検討する価値があります。 エンタープライズライセンスをお持ちの場合は、データをBDCに取得し、そこで使用する価値があります。 オブジェクトをxmlに変換するか、表示するためにXML webpartを使用してシリアル化されたオブジェクトを使用する必要があります。これにはXSLTを使用したカスタムレンダリングの問題があります。

+0

ありがとうございます。外部データは大きく(外部検索結果)、新しいリストとして保持することはできません。私たちはSharePointのプラグインなので、BDCがすべてのインストールで利用可能であるとは保証できません。私はあなたの提案で運が悪いと思いますが、答えに感謝します! –

0

ここBDC定義エディタを使用してWebサービスへのBDC接続を設定する方法について説明素晴らしい記事です:

http://msdn.microsoft.com/en-us/library/bb737887.aspx

+0

残念ながら私は少し違うものが必要です。私はWebサービスコールのライブ結果を表示する必要があるWebパーツを構築しています。これは通常の検索結果には含まれません。ありがたいですが、それは検索ページを変更することに取り組んでいる他の何かのための非常に便利なリンクです! –

0

ビジネスデータカタログ定義エディタを使用してWebサービス接続の作成このIMOを実行する最善の方法はWebパーツを作ることです。 WebパーツとしてUIは、サイトが使用しているテーマと同じになるように自動的にレンダリングされます(上書きしない限り)、管理者権限を持つ誰でもどこにでも配置できます。

+0

私は答えを感謝します。しかし、それは私がすでに取っている入門的なステップです。私の問題はもう少しです。私は既存のWebパーツを持っていて、それにリストを追加する必要があります。必要なウェブパーツを簡単に作成する方法は簡単ではないようですが、あなたのウェブサイトにダイビングして見てみましょう。 –

0

カスタムWebパーツを作成し、SPGridViewを使用することができます。あなたはそれが気に入らないと言います。なぜなら、すべてのフィールドを自分のコラムに強制するからです。しかし、それは真実ではありません。通常のASP.Net GridViewを使用するのと同じように、すべての列に対してテンプレート(ITemplate)を作成し、その中に表示されているものを完全にカスタマイズすることができます。このアプローチを使用して、SharePointと同じように、リストアイテムのタイトルのすぐ隣に小さな「新しい」イメージを追加しました。

関連する問題