如何检查文件是否需要在SharePoint中签出

时间:2013-10-09 07:13:21

标签: c# sharepoint outlook

我希望验证文件是否需要在库设置中签出。我正在寻找一种方法,可以检查我的Web服务,如果特定文件需要签出。

请提供示例代码或告诉我方法名称。我尝试使用forcedcheckout但事实证明该方法只是强行更改设置。

1 个答案:

答案 0 :(得分:1)

我想说,您可以检查库上是否启用了版本控制。

如果是,则检查文件是否已使用,如果不是,则检出。下面是我的代码,你可以自定义它。如果有任何疑问,请告诉我。

SPFolder sharepointfolder = web.GetFolder(SharepointfolderURL);

if (newFolder.RequiresCheckout)
{
                                                SPFile fileOld = web.GetFile(sharepointfolder + "/" + name);
    fileOld.CheckOut();

    SPFile spfile = web.Folders.Add(SharepointfolderURL).Files.Add(name, fileStream, true);
                                                        spfile.Item[SPBuiltInFieldId.ContentTypeId] = customDocumentType.Id;
                                                        spfile.Item.SystemUpdate();

                                                        if (spfile.CheckedOutByUser.LoginName == @"SHAREPOINT\system")
                                                        {
                                                            spfile.CheckIn("System Checkin", SPCheckinType.MajorCheckIn);
                                                        }
    }