2

私は次の情報を追跡しようとしています:

ページを壊さないように長い URL を切り詰めました

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

どちらが多かれ少なかれ同じ指示を持っています。.dll ファイルをビルドから SharePoint サイトの BIN ディレクトリにコピーしています。

Web パーツ ギャラリーをクリックして [新規] をクリックすると、両方の記事で Web パーツがリストに表示されるはずだと表示されます。

考えられるあらゆる方法を試しましたが、Web パーツがそのリストに表示されません。どこかに見逃したステップはありますか?考慮すべき権限はありますか? Sharepoint は、新しい Web パーツがあることをどの程度正確に認識しますか。単にアセンブリを BIN ディレクトリに配置したからですか、それとも web.config のセーフ リストにコントロールを追加したからですか?

安全管理リストに追加しました。考えられるあらゆる組み合わせを試しましたが、うまくいきませんでした。

.DLL アセンブリの名前を別のものに変更する必要がありますか?

私の人生では、これを理解することはできません。

4

5 に答える 5

3

WPをwebPartカタログの「新規」パーツに表示するために必要な最低限の要件は、「bin」フォルダー(12ハイブではなくWebディレクトリのbin :))またはGACとセーフコントロールエントリ。Safeコントロールエントリを確認します。Assembly=
dllの名前
NameSpace=well...WebPartクラスが存在するNameSpaceTypeName=
webPartクラスの名前

NameSpaceとTypeNameをワイルドカードで指定して、そこに到達していることを確認できます。

... Namespace="*" TypeName="*" ...

また、アセンブリに署名してPublicKeyToken=...を入力することをお勧めします。

また、信頼レベルをWSS_MediumまたはFullに設定してみてください。

これが機能しない場合は、WebディレクトリのwpCatalogフォルダーに.webpartファイルを追加してみてください。

編集:明確化

于 2008-10-27T22:00:30.393 に答える
3

MicrosoftのWPPackagerツールを使用してみましたか?私はv2003以降SharePointに触れていませんが、そのプラットフォームのWP展開に便利なツールがあったことを知っています。リンクを提供しますが、1)名前を思い出せない、2)お使いのバージョンのSharePointの有効なインストールルートかどうかわかりません。

于 2008-10-28T15:16:07.103 に答える
3

これは、アセンブリと、safecontrol エントリの web.config に入力された内容との不一致である必要があります。

safecontrol エントリでは大文字と小文字が区別されます。最小のエラーは、Web パーツ ギャラリーの [新規] リストに表示されなくなります。

また、正しい web.config を編集していることを確認してください。:-) もう 1 つの一般的な落とし穴は、Web パーツ クラスをパブリックにする必要があることです。

お役に立てれば

ニック・スワン

于 2008-10-28T15:02:26.900 に答える
1

過去2週間にわたっていくつかのWebパーツを作成してきましたが、Webパーツギャラリーの「新しいWebパーツ」セクションを使用していません。代わりに、.dwpファイル(MyWebPart.dwpなど)を作成します。これは、多かれ少なかれWebパーツを記述するXMLファイルであり、手動でギャラリーにインポートします。

私の.dwpファイルの形式は一般的に次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" >
  <Title>My Sample Web Part</Title>
  <Description>This web part displays "Hello World" on the page.</Description>
  <Assembly>My.Assembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3ed03eac7f647a61</Assembly>
  <TypeName>My.Assembly.MyWebPartClassName</TypeName>
  <!-- Specify initial values for any additional base class or custom properties here. -->
</WebPart>

もちろん、これは、このアセンブリを「セーフコントロール」として追加したことを前提としています。アセンブリをコンパイルしてSharePointマシンのbin/GACに移動したら、Webパーツギャラリーに戻り、[アップロード]をクリックして、.dwpファイルをアップロードします。アップロードした後、いくつかのプロパティを指定する必要があります。

Webパーツが.dllに存在するとすると、ギャラリーリストに追加されたことがわかり、その時点でプレビューしたり、ページに追加したりできます。

于 2008-11-03T19:08:49.437 に答える
1

うわー、あなたは私を困惑させました...私は他のサードパーティの「無料の」Webパーツを手動で展開して、それらを表示できるかどうかを確認します。このサイトにはいくつかあります:http: //www.sharepointblogs.com/mkruger/archive/2007/06/26/free-sharepoint-web-parts-3rd-party.aspx

[assembly: AllowPartiallyTrustedCallers] AssemblyInfoファイルで:を設定したことを確認しましたか?

私は他の誰もこれについてチャイムを鳴らしていないことに驚いています。次のステップは、それを機能/ソリューションとして展開することだと思います。

これは単純なHelloWorldWPですか、それとももっと何かをしていますか?

正直なところ、現時点であなたの努力を妨げているのはあなたのwss/moss構成/設定であると私は信じ始めています。WPをファームに正常にデプロイしたことがありますか?...これはVPC開発ファームまたは本番ですか?

于 2008-10-28T01:02:33.600 に答える