問題タブ [sharepoint-2016]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
160 参照

sharepoint - SharePoint サーバー側へのフック

Microsoft.SharePoint.dllSharePointにアクセスするために Web サービスを使用するのではなく、(パッケージ/アドインなどを介して) SharePoint サーバー側にコードを挿入することについて話していることに注意してください。

したがって、私の問題はこれです。カスタム権限管理を含め、ドキュメント ライブラリの動作をカスタマイズする必要があります。Microsoft.SharePoint.dll私はその動作の内部を分析して閲覧しています。ここに私の観察があります:

  1. SPDocumentLibraryドキュメント ライブラリを管理するコア ロジックを提供します。ただし、WebPartそれ自体ではありません。
  2. ドキュメント ライブラリの実際の Web パーツ レンダリングは、おそらく、ListViewWebPartまたは派生クラスによって処理されます。
  3. 実際には、クラスを継承してドキュメント ライブラリでカスタム動作を提供SPPictureLibraryできる可能性があると思わせるクラスがあります。SPDocumentLibrary
  4. WebPartAdder.SiteWebPartGalleryProvider何らかの方法でSPDocumentLibraryそのWebPart内部Microsoft.SharePoint.WebPartPages.WebPartAdder.AddSourcesメソッドに接続しています。

これはすべてクライアント側であり、SharePoint サーバー自体では発生しません (afaik)。ただし、SPSecurableObjectそのSPDocumentLibrary/SPListオーバーライドでオーバーライド可能なメソッドが表示されます。具体的には次のとおりです。

  1. CheckPermissions
  2. GetUserEffectivePermissionInfo
  3. GetUserEffectivePermissions
  4. EffectiveBasePermissionsなど

私が本当にやりたいことは、内部の SharePoint サーバーでCheckPermissions/をオーバーライドして、カスタム ロジックを挿入できるようにすることです。EffectiveBasePermissionsSPDocumentLibrary

ここで、調査を SharePoint サーバー側の dll に転用し、それらを理解します。しかし、これが実現可能かどうか、または正しい方向に向けられているかどうかについて、専門家の意見を聞きたいです。Microsoft の特徴 (特に ASP.NET 2.0 / ASP.NET MVC をベンチマークとして考慮する) は、拡張性 / プロバイダー フレームワークです。それらはすぐに使用できる「もの」の優れたプロバイダーを提供しますが、デフォルトのプロバイダーを置き換えるために何かを継承/実装することにより、クラスを作成できます。そう:

  1. SharePoint サーバー側に挿入できますか? 私の理想的な解決策は、SPDocumentLibrary派生クラス (サーバー側) を作成し、それを挿入して、Document ライブラリがインスタンス化されるたびに、クラス オブジェクトが作成されるようにすることです (代わりにSPDocumentLibrary、それがサーバー側のクラスであると仮定するのではなく、. SharePoint サーバー側クラスを "反映" します)。
  2. 1) がダメならWebPart、SharePoint ドキュメント ライブラリを使用するカスタムを作成して、ネイティブ ドキュメント ライブラリのように感じさせながら、SPDocumentLibraryその Web パーツにアクセスするときに派生クラスを使用できるようにすることはできますか (再度注意してください。私の議論はすべて、SharePoint サーバー側、つまり、SharePoint のアドレス空間/w3wp プロセス内で実行される私のコードに関するものです)。
  3. なぜ私たちはロジックを持っているSPSite.EffectiveBasePermissionsのですか?つまり、CSOM であると想定されており、サーバーから返される/サーバーに送信されるもののシリアル化/逆シリアル化を単に担当する必要があります。ただし、このオーバーライドされたプロパティには、アクセス許可の推測を中心に展開する精巧なロジックが見られます。
  4. 1) と 2) の両方がノーオペレーション (文字通り :)) である場合、SharePoint がそれらのアクセス許可に基づいて何らかのアクションを実行する前に、SharePoint のアドレス空間で操作しているときに SharePoint の有効なアクセス許可を操作するオプションはありますか?

私はそれが長い質問であることを知っていますが、うまくいけば私は自分の研究をうまくやっています.

0 投票する
2 に答える
837 参照

sharepoint - SharePoint 2016 PWA サイトが機能しない

SQL Server 2014 を使用して Windows Server 2012 に SharePoint 2016 Server をインストールしました。コンテンツ データベースを作成し、以下のコマンドを使用して SP 機能を有効にしました。

成功メッセージを受け取りましたが、サイトのプライマリ管理者アカウントを使用して URL にアクセスしようとすると、システムは次のようなエラー ページにリダイレクトされました。

「申し訳ありませんが、問題が発生しました 予期しないエラーが発生しました。」

数日間この問題に悩まされており、プロジェクト サーバー 2016 をセットアップできません。

助けてください、事前に感謝します