Webサービスを介してWebパーツ内のデータを公開する場所
-
10-12-2019 - |
質問
リストデータはWebサービスを介して公開されていますが、WebサービスもWebサービスを介してさらされることができますか?
この質問は https://stackoverflow.com/質問/ 7115858 / SharePoint-2010-Web-Part-expose-web-service SharePoint Webサービスコールを介してWebパーツの内容を公開したいという違いは、この可能性がありますか?
e.g:WebPartに画像が含まれている場合は、SharePoint Web Service でこのイメージを公開してください。
解決
あなたができることさえできれば、あなたがWebサービスを通してどのようにするのかわからない。ただし、Ajaxを使用してクライアント側のスクリプトで簡単に実行できます。その中のWebパーツでページを取得し、内容を解析して、現在のページで表示する場所を表示します。
他のヒント
同じドメイン内のアクセス可能なページからWebPartのコンテンツを取得することだけの場合、私はあなたがそれのためにWebServiceを必要とするとは思わない。
あなたのWebPartをdiv(id= container)内に配置し、以下のjQuery:を使用することができます。
$('#result').load('sitepages/test.aspx #container');
.
このメソッドが実行されると、 Sitepages / Test.asp の内容を取得してから、jQueryは返された文書を解析してコンテナのIDを持つ要素を見つけます。この要素は、その内容とともに、結果のIDを持つ要素に挿入され、残りの検索された文書は破棄されます。
ドメイン外のページのWebPartの内容にアクセスする必要がある場合は、ここではcontents()
jQuery関数を使用します。
https://stackoverflow.com/questions. / 1796619 / accest-of-an-iframe-with-july
いずれにせよ、WebServiceの場合は、これをコーディングする必要があります。 WebMethodでは、ページを解析して、必要なHTMLセクションの内容を返します。 htmlagilitypack < / P>
Web Partは、他のコンポーネントのコンテンツリポジトリを提供しないように、コンテンツを表示するためのものです。いくつかの選択肢:
-
おそらくあなたはまったくWeb部分を必要とせず、リストを作成して画像を保存するだけです。
-
おそらくWebパーツも必要です。リストを作成し、そこに画像を保存し、その画像をWebパーツから参照します。その他のコンポーネントも同じリストを参照できます。
-
おそらく利用可能な画像が複数あるが、ウェブ部分は表示される「アクティブな」画像であるかを決定するためにいくつかの論理を実行している。この場合、a)このロジックをカスタムWebサービスに移動し、Webパーツと他のコンポーネントの両方からこの同じWebサービスを呼び出します.b)Webパーツにもカスタムリストを更新します。現在の「アクティブ」画像。他のコンポーネントは、カスタムリストを読み込んで画像を取得できます。 (私はアーキテクチャベースからより良いカスタムWebサービスのアイデアが好きですが、SharePointで設定するのはかなり難しいです。Webパーツの更新がクリーンではないようですが、設定がはるかに簡単です。)