【问题标题】:SharePoint check in SPListItemSharePoint 签入 SPListItem
【发布时间】:2017-06-16 01:52:16
【问题描述】:

在 sharepoint 中如何签入 SPListItem?

【问题讨论】:

    标签: c# sharepoint moss wss


    【解决方案1】:

    参见 MSDN:SPListItem.File.CheckIn();

    例如:

    SPFile file = item.File;
    if (file.CheckOutStatus != SPFile.SPCheckOutStatus.None)
    {
        file.CheckIn("Reason for check in.", SPCheckinType.MajorCheckIn);
    }
    

    可选的第二个参数允许通过SPCheckinType enumeration 指定次要、主要或覆盖签入。

    【讨论】:

    • 是否有必要使用 file.publish("published by system") 在文档库中强制发布项目?
    • @SaMolPP 这将取决于库的设置。有些人会在签入时自动发布,如果他们没有配置为使用发布,而其他人则需要发布才能......发布。
    【解决方案2】:

    反响很好,但是在 2010 年,CheckOutStatus 正在下降 - 请改用 SPCheckOutType。您可能还想批准该项目 - 例如:

    SPList MyLib = TheWeb.Lists["MyLibrary"];
    if (MyLib != null)
    {
        if (MyLib.Items.Count > 0)
        {
            foreach(SPListItem AnItem in MyLib.Items)
            {
                  SPFile TheFile = AnItem.File;
                  if (TheFile.CheckOutType != SPFile.SPCheckOutType.None)
                  {
                       TheFile.CheckIn("Check in comment", SPCheckinType.MajorCheckIn);
                       TheFile.Approve("Approval comment");
                  }
            }
        }
    }
    

    大卫·M·斯特林 西格

    【讨论】:

    • 但这会导致修改为“系统帐户”。如何在项目事件接收器中更改 tis
    • 冒充用户帐户是一种方式。
    • 另一种方法是先设置 Author 和 Editor 字段(请记住使用完全限定名称 - 即 i:0#.w|\。您必须同时设置字段并进行更新。
    • 您能否提供,如何使用 C# 实现这一点。一点代码...
    猜你喜欢
    • 1970-01-01
    • 2011-03-26
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 2014-08-16
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多