0

SharePoint 2007 の spfile オブジェクトの checkincomments で問題が発生しました。itemadding、itemadded、itemupdating、itemupdated イベントレシーバーのカスタム contenttypes とカスタム コードを含むカスタム doclib の checkincomments は保存されません。

この問題に関する次のリンクを見つけました http://social.technet.microsoft.com/Forums/en-SG/sharepointgeneral/thread/e7c42f6b-1dab-419a-aee6-010845b31ea0

および http://www.theblackknightsings.com/HowToChangeCheckinCommentAfterSave.aspx

しかし、データベースに直接変更を加えたくないので、最後のリンクソリューションを試していません。

itemupdating イベントでは、properties.AfterProperties["vti_sourcecontrolcheckincomment"] でコメントを取得できます。itemupdated では、このプロパティは空です。

したがって、最初の lik に従って、itemupdating のカスタム コンテンツ フィールドの 1 つにコメントを保存し、itemupdated でそこから取得し、イベント発生を無効にして file.CheckIn("mycomment", SPCheckinType.OverwriteCheckIn) を作成します。

ドキュメント ライブラリにファイルを 2 回アップロードし、バージョンを 1 つ増やす (メジャー バージョン管理を有効にする) と、itemupdating と itemupdated が 2 回発生します。

2 番目の itemupdating の後、非同期の itemupdated の準備ができていないようで、ファイルが現在自分で使用されているという情報を取得します。したがって、更新は失敗します。

カスタム ドキュメント ライブラリの checkincomments が正しく保存されていることを確認する簡単な方法はありますか?

イベントが 2 回目に発生した場合の解決策は何ですか?

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

0

何日もの調査とテストの後、最終的に答えを見つけました:

http://social.technet.microsoft.com/Forums/en-US/sharepointdevelopment/thread/ffed71b1-d255-4da3-90c7-537540c27a36

これは役立ちます!

于 2011-09-05T14:01:05.537 に答える