Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法在SharePoint中发布文件_C#_Sharepoint 2007 - Fatal编程技术网

C# 无法在SharePoint中发布文件

C# 无法在SharePoint中发布文件,c#,sharepoint-2007,C#,Sharepoint 2007,当我从代码发布文件时 byte[] fileBytes = objItem.File.OpenBinary(); string DestinationURL = string.Format(@"{0}/{1}", objDestinationFolder.Url, objItem.File.Name); //Copy the file. SPFile objDestinationFile = objDestinationFolder.Files.Add(DestinationURL, file

当我从代码发布文件时

byte[] fileBytes = objItem.File.OpenBinary();
string DestinationURL = string.Format(@"{0}/{1}", objDestinationFolder.Url, objItem.File.Name);

//Copy the file.
SPFile objDestinationFile = objDestinationFolder.Files.Add(DestinationURL, fileBytes, true);
objDestinationFile.Update();
objDestinationFile.Publish(string.Format("File Copied from {0}", objItem.Url));
我收到一条错误消息,上面写着

 You can only publish, unpublish  documents in a minor version enabled list 
我检查了列表的权限,并检查了“创建主要和次要(草稿)版本”。有什么想法吗

编辑

如果我通过调用CheckIn方法签入文件

objDestinationFile.CheckIn(string.Format(@"File Copied from {0}/{1}", objItem.Web.Url, objItem.Url));

一切正常

我认为文件必须先签入,然后才能发布


因此,在您的情况下,可能会在列表的设置中激活“需要签出”。这意味着,如果上载文档,它将首先被签出。

即使在库中启用了次要版本,我也会遇到此错误。原因是我在没有
Type=“GhostableInLibrary”
属性的模块中添加了一个草稿文件。一旦我纠正了这个问题,我的功能接收器就可以发布草稿文件。

是的,我必须将其签入,但我发现我不需要发布。