1

_CheckinComment を設定する方法を探しています。私がこのように試してみると:

Microsoft.SharePoint.Client.File myUploadFile = myList.RootFolder.Files.Add(fileCreationInformation);
ListItem myItem = myUploadFile.ListItemAllFields;
myItem["Title"] = Path.GetFileName(sDocPath);
myItem["_CheckinComment"] = "This is the comment";
myClientContext.Load(myItem);
myClientContext.Load(myUploadFile);
myClientContext.ExecuteQuery();

Microsoft.SharePoint.Client.ServerException: 無効なデータがリスト アイテムの更新に使用されました。更新しようとしているフィールドは読み取り専用である可能性があります。

これではなく、_CheckinComment (InternalName) を変更したい:

myUploadFile.CheckIn("This is the comment", CheckinType.OverwriteCheckIn)

誰が助けることができますか?

4

1 に答える 1

0

Microsoftによると、「_ CheckinComment 」は読み取り専用のサーバー フィールドです。だから、それはあなたのエラーを説明しています。

あなたが何をしようとしているのかを特定していませんでしたが、これに関連して私自身の問題があったので、私は知っていると思います。アップロード時にチェックイン コメントを付けることができず、checkin() メソッドを使用すると新しいバージョンが作成されることに悩まされたと思います。そのため、アップロードは 2 つのバージョンにまたがっています (1 つ目はチェックイン コメントのないアップロード自体で、2 つ目はチェックイン コメントを追加したものです)。

私にとって重要なのは、Publish(string) [ https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.file.publish.aspx]および Unpublish(string) メソッドを使用することでした。これにより、現在のバージョンをメジャーからマイナーに昇格/降格させながら、現在のファイルのチェックイン コメントを設定できます。ドキュメント ライブラリにメジャー バージョンとマイナー バージョンがあると仮定すると、次のように適用できます。

  1. Upload -> Publish(strComment) コメント付きメジャーバージョンを作成
  2. Upload -> Publish("") -> Unpublish(strComment) でコメント付きのマイナーバージョンを作成します。
于 2015-04-24T05:16:51.310 に答える